0th

Percentile

##### Identify differentially expressed genes by combining p-values

MetaDE.pvalue Identify differentially expressed genes by integrating multiple studies(datasets). The data consists of p-values from your own method/calculations.

Keywords
Meta-analysis DE genes
##### Usage
MetaDE.pvalue(x, meta.method = c("maxP", "maxP.OC", "minP",
"minP.OC", "Fisher", "Fisher.OC", "AW", "AW.OC",
"roP", "roP.OC", "Stouffer", "Stouffer.OC", "SR",
"PR"), rth = NULL, miss.tol = 0.3, asymptotic = FALSE)
##### Arguments
x
a list with components:
• p: a list of p values for each dataset.
• bp: a list of p values calculated from permutation for each dataset. This part can be NULL if you just have the p-values from your own method.
meta.method
a character to specify the type of Meta-analysis methods to combine the p-values or effect sizes. See "Detials".
rth
this is the option for roP and roP.OC method. rth means the rth smallest p-value.
miss.tol
The maximum percent missing data allowed in any gene (default 30 percent).
asymptotic
A logical values to specify whether the parametric methods is chosen to calculate the p-values in meta-analysis. The default is FALSE.
##### Details

The options for argument,mete.method,are listed below:

• "maxP": the maximum of p value method.
• "maxP.OC": the maximum of p values with one-sided correction.
• "minP": the minimum of p values from "test" across studies.
• "minP.OC": the minimum of p values with one-sided correction.
• "Fisher": Fisher's method (Fisher, 1932),the summation of -log(p-value) across studies.
• "Fisher.OC": Fisher's method with one-sided correction (Fisher, 1932),the summation of -log(p-value) across studies.
• "AW": Adaptively-weighted method (Li and Tseng, 2011).
• "AW.OC": Adaptively-weighted method with one-sided correction (Li and Tseng, 2011).
• "roP": rth p-value method.
• "roP.OC": rth p-value method with one-sided correction.
• "Stouffer": the minimum of p values from "test" across studies.
• "Stouffer.OC": the minimum of p values with one-sided correction.
• "SR": the naive sum of the ranks method.
• "PR": the naive product of the ranks method.
For those genes with less than miss.tol *100 percent missing,the p-values are calculated using parametric metod if asymptotic is TRUE. Otherwise, , the p-values for genes without missing values are calculated using permutation methold.

##### Value

• A list containing:
• stata matrix with rows reprenting genes. It is the statistic for the selected meta analysis method of combining p-values.
• pvalthe p-value from meta analysis for each gene for the above stat.
• FDRthe FDR of the p-value for each gene for the above stat.
• AW.weightThe optimal weight assigned to each dataset/study for each gene if the 'AW' or 'AW.OC' method was chosen.

##### References

Jia Li and George C. Tseng. (2011) An adaptively weighted statistic for detecting differential gene expression when combining multiple transcriptomic studies. Annals of Applied Statistics. 5:994-1019. Shuya Lu, Jia Li, Chi Song, Kui Shen and George C Tseng. (2010) Biomarker Detection in the Integration of Multiple Multi-class Genomic Studies. Bioinformatics. 26:333-340. (PMID: 19965884; PMCID: PMC2815659)

##### Examples
#---example 1: Meta analysis of Differentially expressed genes between two classes----------#
# here I generate two pseudo datasets
label1<-rep(0:1,each=5)
label2<-rep(0:1,each=5)
exp1<-cbind(matrix(rnorm(5*20),20,5),matrix(rnorm(5*20,2),20,5))
exp2<-cbind(matrix(rnorm(5*20),20,5),matrix(rnorm(5*20,1.5),20,5))

#the input has to be arranged in lists
x<-list(list(exp1,label1),list(exp2,label2))

# start individual analysis for each dataset: here I used modt to generate p-values.
DEgene<-ind.analysis(x,ind.method=c("modt","modt"),tail="high",nperm=100)
#you don't have to use our ind.analysis for the analysis for individual study. you can input
#p-values to MetaDE.pvalue for meta analysis only. But the input has to be specified in the
# same format as the DEgene in the example above

#--then you can use meta analysis method to combine the above p-values:here I used the Fisher's method
MetaDE.pvalue(DEgene,meta.method='Fisher')