edgeR (version 3.14.0)

camera.DGEList: Competitive Gene Set Test for Digital Gene Expression Data Accounting for Inter-gene Correlation

Description

Test whether a set of genes is highly ranked relative to other genes in terms of differential expression, accounting for inter-gene correlation.

Usage

"camera"(y, index, design=NULL, contrast=ncol(design), ...)

Arguments

y
a DGEList object containing dispersion estimates.
index
an index vector or a list of index vectors. Can be any vector such that y[indices,] selects the rows corresponding to the test set.
design
the design matrix.
contrast
the contrast of the linear model coefficients for which the test is required. Can be an integer specifying a column of design, or the name of a column of design, or else a numeric vector of same length as the number of columns of design.
...
other arguments are passed to camera.default.

Value

A data.frame. See camera for details.

Details

The camera gene set test was proposed by Wu and Smyth (2012) for microarray data. This function makes the camera test available for digital gene expression data. The negative binomial count data is converted to approximate normal deviates by computing mid-p quantile residuals (Dunn and Smyth, 1996; Routledge, 1994) under the null hypothesis that the contrast is zero. See camera for more description of the test and for a complete list of possible arguments.

The design matrix defaults to the model.matrix(~y$samples$group).

References

Dunn, PK, and Smyth, GK (1996). Randomized quantile residuals. J. Comput. Graph. Statist., 5, 236-244. http://www.statsci.org/smyth/pubs/residual.html

Routledge, RD (1994). Practicing safe statistics with the mid-p. Canadian Journal of Statistics 22, 103-110.

Wu, D, and Smyth, GK (2012). Camera: a competitive gene set test accounting for inter-gene correlation. Nucleic Acids Research 40, e133. http://nar.oxfordjournals.org/content/40/17/e133

See Also

roast.DGEList, camera.

Examples

Run this code
mu <- matrix(10, 100, 4)
group <- factor(c(0,0,1,1))
design <- model.matrix(~group)

# First set of 10 genes that are genuinely differentially expressed
iset1 <- 1:10
mu[iset1,3:4] <- mu[iset1,3:4]+10

# Second set of 10 genes are not DE
iset2 <- 11:20

# Generate counts and create a DGEList object
y <- matrix(rnbinom(100*4, mu=mu, size=10),100,4)
y <- DGEList(counts=y, group=group)

# Estimate dispersions
y <- estimateDisp(y, design)

camera(y, iset1, design)
camera(y, iset2, design)

camera(y, list(set1=iset1,set2=iset2), design)

Run the code above in your browser using DataLab