voomWithQualityWeights {limma} | R Documentation

## 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, 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.
`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`.

### 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.

### Value

An `EList` object similar to that from `voom`, with an extra column `sample.weights` containing the vector of sample quality factors added to the `targets` data.frame. The `weights` component combines the sample weights and the usual voom precision weights.

### Author(s)

Matthew Ritchie, Cynthia Liu, Gordon Smyth

### References

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

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. (2015). Why weight? Combining voom with estimates of sample quality improves power in RNA-seq analyses. Nucleic Acids Research 43, e97. http://nar.oxfordjournals.org/content/43/15/e97

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

### See Also

`voom`, `arrayWeights`

A summary of functions for RNA-seq analysis is given in 11.RNAseq.

[Package limma version 3.36.5 Index]