vooma {limma} | R Documentation

## Convert Mean-Variance Trend to Observation-specific Precision Weights for Microarray Data

### Description

Estimate the mean-variance relationship and use this to compute appropriate observational-level weights.

### Usage

    vooma(y, design=NULL, correlation, block=NULL, plot=FALSE, span=NULL)
    voomaByGroup(y, group, design=NULL, correlation, block=NULL,
                 plot=FALSE, span=NULL, col=NULL, lwd=1, alpha=0.5,
                 pch=16, cex=0.3, legend="topright")

### Arguments

`y` | a numeric `matrix`, `EList` object, or any object containing log-expression data that can be coerced to a matrix.
`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.
`block` | vector or factor specifying a blocking variable on the arrays. Has length equal to the number of arrays.
`correlation` | intra-block correlation
`span` | width of the smoothing window, as a proportion of the data set.
`plot` | `logical` value indicating whether a plot of mean-variance trend should be displayed.
`group` | categorical vector or factor giving group membership of columns of `y`.
`col` | vector of colors for plotting group trends
`lwd` | line width for plotting group trends
`pch` | plotting character. Default is integer code 16 which gives a solid circle. If a vector, then should be of length `nrow(y)`.
`cex` | numeric vector of plot symbol expansions. If a vector, then should be of length equal to number of groups.
`alpha` | transparancy of points, on scale from `0` for fully transparant to `1` for fully opaque.
`legend` | character string giving position to place legend.

### Details

`vooma` is an acronym for mean-variance modelling at the observational level for arrays.

`vooma` estimates the mean-variance relationship in the data, and uses this to compute appropriate weights for each observation. This done by estimating a mean-variance trend, then interpolating this trend to obtain a precision weight (inverse variance) for each observation. The weights can then used by other functions such as `lmFit` to adjust for heteroscedasticity.

`voomaByGroup` estimates precision weights separately for each group. In other words, it allows for different mean-variance curves in different groups.

### Value

An EList object with the following components:

`E` | numeric matrix of as input
`weights` | numeric matrix of weights
`design` | numeric matrix of experimental design
`genes` | dataframe of gene annotation, only if `counts` was a `DGEList` object

### Author(s)

Charity Law and Gordon Smyth

### References

Law, C. (2013). Precision weights for gene expression analysis. PhD Thesis. University of Melbourne, Australia. http://repository.unimelb.edu.au/10187/17598

### See Also

`voom`, `arrayWeights`

[Package limma version 3.43.8 Index]