Learn R Programming

limma (version 3.22.7)

voomWithQualityWeights: Combining observational-level with sample-specific quality weights for RNA-seq analysis

Description

Combine voom observational-level weights with sample-specific quality weights in a designed experiment.

Usage

voomWithQualityWeights(counts, design=NULL, lib.size=NULL, normalize.method="none", plot=FALSE, span=0.5, var.design=NULL, method="genebygene", maxiter=50, tol=1e-10, trace=FALSE, replace.weights=TRUE, col=NULL, ...)

Arguments

counts
a numeric matrix containing raw counts, or an ExpressionSet containing raw counts, or a DGEList object.
design
design matrix with rows corresponding to samples and columns to coefficients to be estimated. Defaults to the unit vector meaning that samples are treated as replicates.
lib.size
numeric vector containing total library sizes for each sample. If NULL and counts is a DGEList then, the normalized library sizes are taken from counts. Otherwise library sizes are calculated from the columnwise counts totals.
normalize.method
normalization method to be applied to the logCPM values. Choices are as for the method argument of normalizeBetweenArrays when the data is single-channel.
plot
logical, should a plot of the mean-variance trend and sample-specific weights be displayed?
span
width of the lowess smoothing window as a proportion.
var.design
design matrix for the variance model. Defaults to the sample-specific model (i.e. each sample has a distinct variance) when NULL.
method
character string specifying the estimating algorithm to be used. Choices are "genebygene" and "reml".
maxiter
maximum number of iterations allowed.
tol
convergence tolerance.
trace
logical variable. If true then output diagnostic information at each iteration of the '"reml"' algorithm, or at every 1000th iteration of the '"genebygene"' algorithm.
replace.weights
logical variable. If TRUE then the weights in the voom object will be replaced with the combined voom and sample-specific weights and the EList object from voom is returned. If FALSE, then a matrix of combined weights is returned.
col
colours to use in the barplot of sample-specific weights (only used if plot=TRUE). If NULL, bars are plotted in grey.
...
other arguments are passed to lmFit.

Value

Either an EList object with the following components:
E
numeric matrix of normalized expression values on the log2 scale
weights
numeric matrix of inverse variance weights
design
design matrix
lib.size
numeric vector of total normalized library sizes
genes
dataframe of gene annotation extracted from counts
or a matrix of combined voom and sample-specific weights with same dimension as counts.

Details

This function is intended to process RNA-Seq data prior to linear modelling in limma.

It combines observational-level weights from voom with sample-specific weights estimated using the arrayWeights function.

References

Liu, R., Holik, A. Z., Su, S., Jansz, N., Chen, K., Leong, H. S., Blewitt, M. E., Asselin-Labat, M.-L., Smyth, G. K., Ritchie, M. E. (2014). Why weight? Combining voom with estimates of sample quality improves power in RNA-seq analyses. (in preparation)

Ritchie, M. E., Diyagama, D., Neilson, van Laar, R., J., Dobrovic, A., Holloway, A., and Smyth, G. K. (2006). Empirical array quality weights in the analysis of microarray data. BMC Bioinformatics 7, 261. http://www.biomedcentral.com/1471-2105/7/261

Law, C. W., Chen, Y., Shi, W., Smyth, G. K. (2014). Voom: precision weights unlock linear model analysis tools for RNA-seq read counts. Genome Biology 15, R29. http://genomebiology.com/2014/15/2/R29

See Also

voom, arrayWeights

An overview of linear model functions in limma is given by 06.LinearModels. A voomWithQualityWeights case study is given in the User's Guide.