hy... I have got the results of zScoreFDR in R using genemeta package for getting the combined differential expression of different datasets. its giving the significance in FDR. How can I get a p-value in this function? or how can I convert these FDR values to p-vlaue
R code:
mde_result=zScoreFDR(exp,pd,useREM=TRUE,nperm=1000,CombineExp=1:length(exp))
mde_result1=mde_result$two.sided
Result:
zSco_Ex_1 FDR_Ex_1 zSco_Ex_2 FDR_Ex_2 zSco_Ex_3 FDR_Ex_3 zSco_Ex_4
1007_s_at 0.2870941 0.9253510 1.3742436 0.5066022 2.2165805 0.2224656 1.3288908
1053_at 0.2999103 0.9215155 -0.6120074 0.7908496 0.6570196 0.7748797 0.1895178
117_at 2.9117973 0.2672966 1.5257332 0.4583429 1.7730910 0.3455320 2.8244912
121_at 2.0622951 0.4209762 1.4720011 0.4752624 1.6188194 0.3984726 0.7143212
1255_g_at -1.0345133 0.6860829 -1.3172784 0.5283582 -1.4167875 0.4666103 -2.2125113
1294_at 1.2080791 0.6323945 1.4205655 0.4919560 1.5223043 0.4302672 1.1922492
FDR_Ex_4 zSco_Ex_5 FDR_Ex_5 zSco **FDR** MUvals MUsds
1007_s_at 0.4807693 1.85341722 0.2189935 3.2516221 **5.647721e-03** 0.6173539 0.1898603
1053_at 0.9462421 0.51781259 0.8068979 0.5612132 **6.614696e-01** 0.1041896 0.1856507
117_at 0.1057010 2.03407014 0.1645560 4.7996284 **2.293578e-05** 0.9399473 0.1958375
121_at 0.7499695 -0.09399260 0.9679531 2.3619162 **4.847292e-02** 0.4464017 0.1889998
1255_g_at 0.1950663 0.02755952 0.9901939 -2.4793942 **3.790693e-02** -0.4684170 0.1889240
1294_at 0.5398535 0.11926653 0.9607427 2.3040301 **5.467117e-02** 0.4331837 0.1880113
Qvals df Qpvalues Chisq
1007_s_at 1.5122570 4 0.8244681 1.147485e-03
1053_at 0.8852606 4 0.9266658 5.746522e-01
117_at 3.0290360 4 0.5529781 1.589603e-06
121_at 3.9808656 4 0.4086016 1.818075e-02
1255_g_at 3.5612972 4 0.4686194 1.316058e-02
1294_at 1.9219998 4 0.7501025 2.122096e-02
2 answers
FDR is the p-value, it's just been adjusted for multiple testing. Use this value in your paper and any downstream analysis.
Z-score may be converted into p-values directly. In your output there are several fields a bit confusing to me. At first, they provide z-scores - cool.
Usually they are provided for univariate Normal distributions, but you can also sum up several normals and take their pooled standard error and infer z-score - if it is meaningful. But they also provide chisq value (degrees of freedom = 4) - this is another test, 5-dimensional multivariate Normal was used and I am confused how these 2 are related to each other, is covariance taken into account for chisq test?
Your FDR may be estimated with permutation techniques and be not related to z-scores at all. Overall, I'd recommend to read the manual (or better paper) for the package you've used and choose the right value that you'll be using. But, in general, here: Calculating P-Values From Z-Scores , this is answering the question "how to switch from Z-scores to p-values"
And for inferring p-values from FDR you need to
- know the method used for FDR correction;
- have hundreds of values.
This is a possible solution:
Log in to answer this question.