normalizationFactors: Accessor functions for the normalization factors in a...

Description Usage Arguments Details Note Examples

Description

Gene-specific normalization factors for each sample can be provided as a matrix, which will preempt sizeFactors. In some experiments, counts for each sample have varying dependence on covariates, e.g. on GC-content for sequencing data run on different days, and in this case it makes sense to provide gene-specific factors for each sample rather than a single size factor.

Usage

1
2
3
4
5
6
7
8
9
normalizationFactors(object, ...)

normalizationFactors(object, ...) <- value

## S4 method for signature 'DESeqDataSet'
normalizationFactors(object)

## S4 replacement method for signature 'DESeqDataSet,matrix'
normalizationFactors(object) <- value

Arguments

object

a DESeqDataSet object.

...

additional arguments

value

the matrix of normalization factors

Details

Normalization factors alter the model of DESeq in the following way, for counts K_ij and normalization factors NF_ij for gene i and sample j:

K_ij ~ NB(mu_ij, alpha_i)

mu_ij = NF_ij q_ij

Note

Normalization factors are on the scale of the counts (similar to sizeFactors) and unlike offsets, which are typically on the scale of the predictors (in this case, log counts). Normalization factors should include library size normalization. They should have row-wise geometric mean near 1, as is the case with size factors, such that the mean of normalized counts is close to the mean of unnormalized counts. See example code below.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
dds <- makeExampleDESeqDataSet(n=100, m=4)

normFactors <- matrix(runif(nrow(dds)*ncol(dds),0.5,1.5),
                      ncol=ncol(dds),nrow=nrow(dds),
                      dimnames=list(1:nrow(dds),1:ncol(dds)))

# the normalization factors matrix should not have 0's in it
# it should have geometric mean near 1 for each row
normFactors <- normFactors / exp(rowMeans(log(normFactors)))
normalizationFactors(dds) <- normFactors

dds <- DESeq(dds)

DESeq2 documentation built on Feb. 22, 2021, 10 a.m.