Fisher: Fisher's combined probability test

Description Usage Arguments Examples

View source: R/metaanalysis.R

Description

A meta-analysis approach using combined significance.

Usage

1
Fisher(merged, k.threshold = 3)

Arguments

merged

A data frame with raw p-values of genes (rows) in each study (columns).

k.threshold

Minimum number of data sets included in the meta-analysis. Default = 3.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
##---- Should be DIRECTLY executable !! ----
##-- ==>  Define data, use random,
##--	or do  help(data=index)  for the standard data sets.

## The function is currently defined as
function (merged, k.threshold = 3) 
{
    F.stat <- function(dat) {
        pvals <- as.numeric(dat[2:length(dat)])
        k <- length(which(!is.na(pvals)))
        F <- -2 * sum(log(pvals), na.rm = TRUE)
        return(c(dat["Group.1"], F = F, k = k))
    }
    meta <- data.frame(t(apply(merged, 1, F.stat)))
    meta$F <- as.numeric(levels(meta$F))[meta$F]
    meta$k <- as.numeric(levels(meta$k))[meta$k]
    meta$df <- 2 * meta$k
    meta <- meta[which(meta$k >= k.threshold & meta$Group.1 != 
        ""), ]
    meta$P <- pchisq(meta$F, df = meta$df, lower.tail = FALSE)
    meta$Q <- qvalue(meta$P)$qvalues
    meta$BH <- p.adjust(meta$P, method = "fdr")
    meta.ord <- meta[order(meta$BH), ]
    return(meta.ord)
  }

cchng/MetaAnalysis documentation built on May 29, 2019, 2:34 p.m.