Subscribe Bookmark RSS Feed

JSL: "By Variable" Quantile Median

matt7109

Contributor

Joined:

Jun 9, 2017

While JMP does not support a "By Varibale" quanitle, is there any work around? 

For example, if I have 2 lists of data, height and age, how would I find the median height of each person of a specific age using JSL. 

 

If I were doing it as a mean, it would look something like (However, I want a median):

Mean( :Height, :Age );

 

Thanks in advance!!!

 

1 ACCEPTED SOLUTION

Accepted Solutions
markbailey

Staff

Joined:

Jun 23, 2011

Solution

Select Help > Scripting Index. Now change the first list to show Functions. Select the Statistical group of functions. Select Col Quantile in the second list.

The syntax is Col Quantile( column, probability, <By column> )

Learn it once, use it forever!
5 REPLIES
markbailey

Staff

Joined:

Jun 23, 2011

Solution

Select Help > Scripting Index. Now change the first list to show Functions. Select the Statistical group of functions. Select Col Quantile in the second list.

The syntax is Col Quantile( column, probability, <By column> )

Learn it once, use it forever!
matt7109

Contributor

Joined:

Jun 9, 2017

In the Index, it reads:

 

Col Quantile 

y = Col Quantile ( xCol , p ) 

 

This above only finds medan of one variable rather than by column.

When attempthing the syntax you provided (Col Quantile( column, probability, <By column> )),I am recieving a "too many arguements" error.

 

Thanks!

txnelson

Super User

Joined:

Jun 22, 2012

apparently you are running JMP 12 or earlier.  Here is a formula based upon the Semiconductor Capability sample data table that will do what you want

dt = Current Data Table();
mysite = :SITE;
x = Quantile( 0.5, :NPN1[dt << get rows where( :SITE == mysite )] );
x;

Just replace :Site with your by column, and :NPN1 with your measurement column

Jim
markbailey

Staff

Joined:

Jun 23, 2011

You do not have the current version of JMP.

You can seach the discussions here about similar requests and find scripts that solve this problem as a work-around.

Learn it once, use it forever!
matt7109

Contributor

Joined:

Jun 9, 2017

Ah, I see this is a feature of 13, not 12. Thanks!