[BioC] Cox MTP question

Katherine Pollard kpollard at soe.ucsc.edu
Mon Apr 18 20:05:12 CEST 2005

Hi Benjamin,

Jim gives a good answer to your question. The MTP function uses a
bootstrap null distribution to compute p-values for Cox regression
coefficients (permuation null distribution is available for t- and
F-tests, but not Cox or linear regression). If your arrays are iid and
your sample size is large enough, these should be good p-values. But,
they can be problematic in other settings. The nice thing is that you do
not have to make assumptions about the distribution of the test
statistics when you use the bootstrap estimated null distribution.

FYI: there was a bug in multtest_1.5.2 so that rawp (and hence adjp)
computed with the MTP function were too small. This has been fixed in
multtest_1.5.4, which is available under developmental packages on the
BioC website. You should install and use this package or multtest_1.6.0,
which will be released next month.



Date: Sun, 17 Apr 2005 18:50:09 +0200
From: Benjamin Haibe-Kains <bhaibeka at ulb.ac.be>
Subject: [BioC] multtest and Cox regression
To: Bioconductor Mailing List <bioconductor at stat.math.ethz.ch>


I would want to perform a filtering of my genes according to the
p-values of univariate Cox regression (so, if I have 100 genes, I
compute 100 Cox regression with only one gene at a time). Because I
perform multiple statistical test, I would want to use a multiple
testing procedure to get adjusted p-values.

I have seen that the MTP function from the multtest package does exactly
what I need. When I used this function with the Cox parameter

r <- MTP(X=data, Y=Surv(time, event), test="coxph.YvsXZ", B=100)

and I look the unadjusted p-values (r at rawp), they do not correspond to
the univariate p-values returns by the summary of the coxph function
(p.value <- 1 - pchisq(z^2, df=1) where z is the z-statistic). Actually,
when I look at the code, the computed statistic is identical but the
distribution against this statistic is compared is not the same (in the
MTP function, this function is estimated by bootstrap, it's not the
chisq). I don't understand this fact.

Can anyone give me further details about that ?


Benjamin Haibe-Kains


Date: Sun, 17 Apr 2005 17:33:27 -0400
From: "James W. MacDonald" <jmacdon at med.umich.edu>
Subject: Re: [BioC] multtest and Cox regression
To: Benjamin Haibe-Kains <bhaibeka at ulb.ac.be>
Cc: Bioconductor Mailing List <bioconductor at stat.math.ethz.ch>

With microarray data it is difficult if not impossible to determine the
correct null distribution for each of the genes on a given chip. Given
this fact, you really have two choices; either assume that the null is
what you would expect (e.g., use a t-distribution for t-tests, an
F-distribution for F-tests, a chisquare distribution for a Cox model),
and take the chance that you are wrong for some (most, all?) of your
genes, or don't assume anything about the null and estimate it using a
bootstrap or permutation distribution. There are pluses and minuses to
each approach, and you have to decide which method is applicable to your

The multtest package is designed to use bootstrap or permutation null
distributions. If you simply want to rely on the chi-square distribution
and adjust for multiplicity, you might want to look at ?p.adjust.



More information about the Bioconductor mailing list