Hi everybody,
I use limma to analyze a two-color microarrays data set. Using topTable I find say 15 genes with "holm" adjusted p-values less than a given threshold pt=0.05, but if I use classifyTestsP (specifying the same threshold and adjustment method) I obtain much more than 15. Is there any explanation for this? Here is the code, supposing that the normalized data is available as an object called MA.
design <-cbind("L-H1"=c(0,1,-1,0,1,0,-1,0),"L-H7"=c(-1,0,0,-1,0,1,0,1))
cor <- duplicateCorrelation(MA,design,ndups=2,spacing=1)
fit <- lmFit(MA,design,ndups=2,spacing=1,correlation=cor$consensus.cor
relation)
fit <- eBayes(fit)
tt1<-topTable(fit,n=500,adjust.method="holm")
tt<-tt1[tt1$P.Value<0.05,]
dim(tt)
[1] 15 11
So there are 15 genes with p.values less than 0.05. Now using classifyTestsP:
x<-classifyTestsP(fit,p.value=0.05, method="holm")
sum(abs(x[,1])>0)
[1] 235
there appears to be 235.
What am I doing wrong?
Thanks a lot, Laurentiu Tarca