Step-down maxT and minP multiple testing procedures
These functions compute permutation adjusted p-values for step-down multiple testing procedures described in Westfall & Young (1993).
mt.maxT(X,classlabel,test="t",side="abs",fixed.seed.sampling="y",B=10000,na=.mt.naNUM,nonpara="n") mt.minP(X,classlabel,test="t",side="abs",fixed.seed.sampling="y",B=10000,na=.mt.naNUM,nonpara="n")
X |
A data frame or matrix, with m rows corresponding to variables
(hypotheses) and
n columns to observations. In the case of gene expression data, rows
correspond to genes and columns to mRNA samples. The data can
be read using |
classlabel |
A vector of integers corresponding to observation (column)
class labels. For k classes, the labels must be integers
between 0 and k-1. For the |
test |
A character string specifying the statistic to be
used to test the null hypothesis of no association between the
variables and the class labels. |
side |
A character string specifying the type of rejection region. |
fixed.seed.sampling |
If |
B |
The number of permutations. For a complete
enumeration, |
na |
Code for missing values (the default is |
nonpara |
If |
These functions compute permutation adjusted p-values for the step-down maxT and minP multiple testing procedures, which provide strong control of the family-wise Type I error rate (FWER). The adjusted p-values for the minP procedure are defined in equation (2.10) p. 66 of Westfall & Young (1993), and the maxT procedure is discussed p. 50 and 114. The permutation algorithms for estimating the adjusted p-values are given in Ge et al. (In preparation). The procedures are for the simultaneous test of m null hypotheses, namely, the null hypotheses of no association between the m variables corresponding to the rows of the data frame X
and the class labels classlabel
. For gene expression data, the null hypotheses correspond to no differential gene expression across mRNA samples.
A data frame with components
index |
Vector of row indices, between 1 and |
teststat |
Vector of test statistics, ordered according to |
rawp |
Vector of raw (unadjusted) p-values, ordered according to |
adjp |
Vector of adjusted p-values, ordered according to |
plower |
For |
Yongchao Ge, yongchao.ge@mssm.edu,
Sandrine Dudoit, http://www.stat.berkeley.edu/~sandrine.
S. Dudoit, J. P. Shaffer, and J. C. Boldrick (Submitted). Multiple hypothesis testing in microarray experiments.
Y. Ge, S. Dudoit, and T. P. Speed. Resampling-based multiple testing for microarray data hypothesis, Technical Report \#633 of UCB Stat. http://www.stat.berkeley.edu/~gyc
P. H. Westfall and S. S. Young (1993). Resampling-based multiple testing: Examples and methods for p-value adjustment. John Wiley \& Sons.
# Gene expression data from Golub et al. (1999) # To reduce computation time and for illustrative purposes, we condider only # the first 100 genes and use the default of B=10,000 permutations. # In general, one would need a much larger number of permutations # for microarray data. data(golub) smallgd<-golub[1:100,] classlabel<-golub.cl # Permutation unadjusted p-values and adjusted p-values # for maxT and minP procedures with Welch t-statistics resT<-mt.maxT(smallgd,classlabel) resP<-mt.minP(smallgd,classlabel) rawp<-resT$rawp[order(resT$index)] teststat<-resT$teststat[order(resT$index)] # Plot results and compare to Bonferroni procedure bonf<-mt.rawp2adjp(rawp, proc=c("Bonferroni")) allp<-cbind(rawp, bonf$adjp[order(bonf$index),2], resT$adjp[order(resT$index)],resP$adjp[order(resP$index)]) mt.plot(allp, teststat, plottype="rvsa", proc=c("rawp","Bonferroni","maxT","minP"),leg=c(0.7,50),lty=1,col=1:4,lwd=2) mt.plot(allp, teststat, plottype="pvsr", proc=c("rawp","Bonferroni","maxT","minP"),leg=c(60,0.2),lty=1,col=1:4,lwd=2) mt.plot(allp, teststat, plottype="pvst", proc=c("rawp","Bonferroni","maxT","minP"),leg=c(-6,0.6),pch=16,col=1:4) # Permutation adjusted p-values for minP procedure with F-statistics (like equal variance t-statistics) mt.minP(smallgd,classlabel,test="f",fixed.seed.sampling="n") # Note that the test statistics used in the examples below are not appropriate # for the Golub et al. data. The sole purpose of these examples is to # demonstrate the use of the mt.maxT and mt.minP functions. # Permutation adjusted p-values for maxT procedure with paired t-statistics classlabel<-rep(c(0,1),19) mt.maxT(smallgd,classlabel,test="pairt") # Permutation adjusted p-values for maxT procedure with block F-statistics classlabel<-rep(0:18,2) mt.maxT(smallgd,classlabel,test="blockf",side="upper")
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.