cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Sign-in to the JMP Community will be unavailable intermittently Dec. 6-7 due to a system update. Thank you for your understanding!
  • We’re retiring the File Exchange at the end of this year. The JMP Marketplace is now your destination for add-ins and extensions.
  • JMP 19 is here! Learn more about the new features.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
Neeraj
Level II

Regarding FDR P-value calculation in JMP

Hi,

I have performed two sample nonparametric test (Wilcoxon) to see the significance difference between male and female for approx. 100 gene gene expression in JMP. Now, I would like to see FDR p vale for this analysis. Could you please suggest me that how can I  perform this analysis in JMP?

Thanks

Neeraj

3 REPLIES 3
Thierry_S
Super User

Re: Regarding FDR P-value calculation in JMP

Hi Neeraj,

With a bit of digging, I was able to find an Add-In developed by John Sall from JMP that calculates correctly the FDR p Value False Discovery Rate PValue 

If you are not familiar with Add-Ins, just download the file to your computer and double click in the file: it should install automatically

Best,

TS

Thierry R. Sornasse
Neeraj
Level II

Re: Regarding FDR P-value calculation in JMP

Thanks!

txnelson
Super User

Re: Regarding FDR P-value calculation in JMP

I dug up an old piece of JSL that I used to calculate the FDR.  Attached is an example data table that is the results from a Response Screening platform.  I cut it down to have just the PValues and the FDR values calculated from the Response Screening platform.  The script below, takes the p Values from the data table and independently calculates the FDR.

Names Default To Here( 1 );

dt = Current Data Table();

pValues = dt:PValue << get values;

index = Rank Index( pvalues );	// removes missing values
n = N Row( index );

ordPValue = pvalues[index];
adkPValue = J( n, 1, . );

For( i = 1, i <= n, i++,
	k = n - i + 1;
	ratio = n / (n - i + 1);
	adkPValue[k] = If( i == 1,
		ordPValue[k],
		Min( ratio * ordPValue[k], adkPValue[k + 1] )
	);
);
dt << New Column( "kEN Calculated FDR PValue", Format( "Scientific" ) );
For( i = 1, i <= N Rows( adkPValue ), i++,
	dt:kEN Calculated FDR PValue[index[i]] = adkPValue[i]
);
Jim

Recommended Articles