Skip to contents

This function computes the p-value of the likelihood ratios and apply a multiple testing correction.

Usage

multtest.TcGSA(
  tcgsa,
  threshold = 0.05,
  myproc = "BY",
  exact = TRUE,
  nbsimu_pval = 1e+06
)

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. See mt.rawp2adjp for 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 TRUE and 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.

Author

Boris P. Hejblum

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
}