Computing the P-value of the Likelihood Ratios Applying a Multiple Testing Correction
Source:R/multtest.TcGSA.R
multtest.TcGSA.RdThis function computes the p-value of the likelihood ratios and apply a multiple testing correction.
Arguments
- tcgsa
a TcGSA object.
- threshold
the threshold at which the FDR or the FWER should be controlled.
- myproc
a vector of character strings containing the names of the multiple testing procedures for which adjusted p-values are to be computed. This vector should include any of the following: "
Bonferroni", "Holm", "Hochberg", "SidakSS", "SidakSD", "BH", "BY", "ABH", "TSBH" or "none". "none" indicates no adjustment for multiple testing. Seemt.rawp2adjpfor details. Default is "BY", the Benjamini & Yekutieli (2001) step-up FDR-controlling procedure (general dependency structures). In order to control the FWER (in case of an analysis that is more a hypothesis confirmation than an exploration of the expression data), we recommend to use "Holm", the Holm (1979) step-down adjusted p-values for strong control of the FWER.- exact
logical flag indicating whether the raw p-values should be computed from the exact asymptotic mixture of chi-square, or simulated (longer and not better). Default is
TRUEand should be preferred.- nbsimu_pval
the number of observations under the null distribution to be generated in order to compute the p-values. Default is
1e+06.
Value
multtest.TcGSA returns an dataframe with 5 variables. The
rows correspond to the gene sets under scrutiny. The 1st column is the
likelihood ratios LR, the 2nd column is the convergence status of the
model under the null hypothesis CVG_H0, the 3rd column is the
convergence status of the model under the alternative hypothesis
CVG_H1, the 4th column is the raw p-value of the mixed likelihood
ratio test raw_pval, the 5th column is the adjusted p-value of the
mixed likelihood ratio test adj_pval.
Examples
if(interactive()){
data(data_simu_TcGSA)
tcgsa_sim_1grp <- TcGSA.LR(expr=expr_1grp, gmt=gmt_sim, design=design,
subject_name="Patient_ID", time_name="TimePoint",
time_func="linear", crossedRandom=FALSE)
mtt <- multtest.TcGSA(tcgsa_sim_1grp, threshold = 0.05,
myproc = "BY", nbsimu_pval = 1000)
mtt
}