multtest and Cox regression
2
0
Entering edit mode
@benjamin-haibe-kains-955
Last seen 7.8 years ago
Hi, 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@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 ? Best, -- Benjamin Haibe-Kains [http://www.ulb.ac.be/di/map/bhaibeka/] Machine Learning Group (ULB) [http://www.ulb.ac.be/di/mlg/] MicroArray Unit (IJB) [http://www.bordet.be/servmed/array/]
Regression multtest Regression multtest • 2.9k views
0
Entering edit mode
@james-w-macdonald-5106
Last seen 12 hours ago
United States
Benjamin Haibe-Kains wrote: > Hi, > > 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@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 ? 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 situation. 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. Best, Jim > > Best, > -- James W. MacDonald University of Michigan Affymetrix and cDNA Microarray Core 1500 E Medical Center Drive Ann Arbor MI 48109 734-647-5623 ********************************************************** Electronic Mail is not secure, may not be read every day, and should not be used for urgent or sensitive issues.
0
Entering edit mode
@benjamin-haibe-kains-1207
Last seen 7.8 years ago
Hi, 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@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 ? Best, -- Benjamin Haibe-Kains [http://www.ulb.ac.be/di/map/bhaibeka/] Machine Learning Group (ULB) [http://www.ulb.ac.be/di/mlg/] MicroArray Unit (IJB) [http://www.bordet.be/servmed/array/]