adjust.p {cp4p} | R Documentation |
Adjusted p-values for adaptive FDR control
Description
This function computes adjusted p-values for adaptive FDR control from a vector of raw (unadjusted) p-values.
Usage
adjust.p(p, pi0.method = 1, alpha = 0.05, nbins = 20, pz = 0.05)
Arguments
p |
Numeric vector of raw p-values. Raw p-values are assumed without missing values, and between 0 and 1. |
pi0.method |
Numeric value between 0 and 1 corresponding to the proportion of true null hypotheses (non-differentially abundant proteins or peptides), or the name of an estimation method for this proportion among |
alpha |
A nominal type I error rate used for estimating the proportion of true null hypotheses (non-differentially abundant proteins or peptides) in the two-stage Benjamini and Hochberg procedure (used only if |
nbins |
Number of bins. Parameter used for the |
pz |
P-value threshold such as p-values below are associated to false null hypotheses. Used for the |
Details
The procedure uses an estimation of the proportion of true null hypotheses (non-differentially abundant proteins or peptides), the value or the name of which is precised in input. Next, this estimation is multiplied by the adjusted p-values of the Benjamini and Hochberg procedure (1995) to obtain the final adjusted p-values (see section 3 in Craiu and Sun (2008) for details).
The adjusted p-values of the Benjamini and Hochberg procedure (1995) and of the two-stage Benjamini and Hochberg procedure (Benjamini et al. (2006)) are computed using the R package multtest
(Pollard et al. (2005)).
Value
A list composed of :
pi0 |
The proportion of true null hypotheses (non-differentially abundant proteins or peptides) used to adjust p-values. |
adjp |
A matrix of raw and adjusted p-values with rows corresponding to each test. First column corresponds to raw p-values and second column to adjusted p-values. |
Author(s)
Quentin Giai Gianetto <quentin2g@yahoo.fr>
References
Y. Benjamini and Y. Hochberg. Controlling the false discovery rate: a practical and powerful approach to multiple testing. Journal of the Royal Statistical Society. Series B (Methodological), 289-300, 1995.
Y. Benjamini, A.M. Krieger, and D.Yekutieli. Adaptive linear step-up procedures that control the false discovery rate. Biometrika, 93(3):491-507, 2006.
R.V. Craiu and L. Sun. Choosing the lesser evil: trade-off between false discovery rate and non-discovery rate. Statistica Sinica, 18:861-879, 2008.
K.S. Pollard, S. Dudoit and M.J. van der Laan. Multiple Testing Procedures: R multtest Package and Applications to Genomics, in Bioinformatics and Computational Biology Solutions Using R and Bioconductor. Springer. 2005.
See Also
Examples
#get p-values
data(LFQRatio2)
p=LFQRatio2[,7]
#adjust p-values by estimating the proportion of true null hypotheses
#with the "pounds" method.
res_pounds=adjust.p(p, pi0.method = "pounds")
#proportion of true null hypotheses with the "pounds" method.
res_pounds$pi0
#plot ajusted p-values in function of raw p-values
plot(res_pounds$adjp)
#adjust p-values by estimating the proportion of true null hypotheses
#using the two-stage Benjamini and Hochberg procedure with a FDR of 0.1.
res_bky=adjust.p(p, pi0.method = "bky", alpha = 0.1)
#proportion of true null hypotheses with the two-stage BH procedure.
res_bky$pi0
#plot adjusted p-values in function of raw p-values
plot(res_bky$adjp)
#compare the two-stage Benjamini and Hochberg procedure
#with the "pounds" method
plot(res_pounds$adjp[,2],res_bky$adjp[,2])