norm_DESeq2 {benchdamic} | R Documentation |
Calculate normalization factors from a phyloseq object to scale the raw
library sizes. Inherited from DESeq2
estimateSizeFactors
function.
norm_DESeq2( object, method = c("ratio", "poscounts", "iterate"), verbose = TRUE, ... )
object |
phyloseq object containing the counts to be normalized. |
method |
Method for estimation: either |
verbose |
an optional logical value. If |
... |
other parameters for DESeq2
|
A new column containing the chosen DESeq2-based normalization factors
is added to the phyloseq sample_data
slot.
estimateSizeFactors
for details.
setNormalizations
and runNormalizations
to fastly
set and run normalizations.
set.seed(1) # Create a very simple phyloseq object counts <- matrix(rnbinom(n = 60, size = 3, prob = 0.5), nrow = 10, ncol = 6) metadata <- data.frame("Sample" = c("S1", "S2", "S3", "S4", "S5", "S6"), "group" = as.factor(c("A", "A", "A", "B", "B", "B"))) ps <- phyloseq::phyloseq(phyloseq::otu_table(counts, taxa_are_rows = TRUE), phyloseq::sample_data(metadata)) # Calculate the normalization factors ps_NF <- norm_DESeq2(object = ps, method = "poscounts") # The phyloseq object now contains the normalization factors: normFacts <- phyloseq::sample_data(ps_NF)[, "NF.poscounts"] head(normFacts) # VERY IMPORTANT: to convert normalization factors to scaling factors divide # them by the library sizes and renormalize. scaleFacts = normFacts / phyloseq::sample_sums(ps_stool_16S) # Renormalize: multiply to 1 scaleFacts = scaleFacts/exp(mean(log(scaleFacts)))