voomWithDreamWeights {variancePartition} | R Documentation

## Transform RNA-Seq Data Ready for Linear Mixed Modelling with dream()

### Description

Transform count data to log2-counts per million (logCPM), estimate the mean-variance relationship and use this to compute appropriate observation-level weights. The data are then ready for linear mixed modelling with dream(). This method is the same as limma::voom(), except that it allows random effects in the formula

### Usage

    voomWithDreamWeights(
      counts,
      formula,
      data,
      lib.size = NULL,
      normalize.method = "none",
      span = 0.5,
      plot = FALSE,
      save.plot = FALSE,
      quiet = FALSE,
      BPPARAM = bpparam(),
      ...
    )

### Arguments

`counts` | a numeric 'matrix' containing raw counts, or an 'ExpressionSet' containing raw counts, or a 'DGEList' object. Counts must be non-negative and NAs are not permitted.
`formula` | specifies variables for the linear (mixed) model. Must only specify covariates, since the rows of exprObj are automatically used a a response. e.g.: ~ a + b + (1|c) Formulas with only fixed effects also work, and lmFit() followed by contrasts.fit() are run.
`data` | data.frame with columns corresponding to formula
`lib.size` | numeric vector containing total library sizes for each sample. Defaults to the normalized (effective) library sizes in 'counts' if 'counts' is a 'DGEList' or to the columnwise count totals if 'counts' is a matrix.
`normalize.method` | the microarray-style normalization method to be applied to the logCPM values (if any). Choices are as for the 'method' argument of 'normalizeBetweenArrays' when the data is single-channel. Any normalization factors found in 'counts' will still be used even if 'normalize.method'="none".
`span` | width of the lowess smoothing window as a proportion.
`plot` | logical, should a plot of the mean-variance trend be displayed?
`save.plot` | logical, should the coordinates and line of the plot be saved in the output?
`quiet` | suppress message, default FALSE
`BPPARAM` | parameters for parallel evaluation
`...` | other arguments are passed to 'lmer'.

### Details

Adapted from vomm() in limma v3.40.2

### Value

An 'EList' object just like the result of limma::voom()

### See Also

limma::voom()

### Examples

    # library(variancePartition)
    library(edgeR)
    library(BiocParallel)

    data(varPartDEdata)

    # normalize RNA-seq counts
    dge = DGEList(counts = countMatrix)
    dge = calcNormFactors(dge)

    # specify formula with random effect for Individual
    form <- ~ Disease + (1|Individual)

    # compute observation weights
    vobj = voomWithDreamWeights( dge[1:20,], form, metadata)

    # fit dream model
    res = dream( vobj, form, metadata)

    # extract results
    topTable(res, coef="Disease1")

[Package variancePartition version 1.17.10 Index]