# generate a dataset with size factors: .5, 1, 1, 2
dds <- makeExampleDESeqDataSet(m = 4, n = 1000,
interceptMean=log2(1e3),
interceptSD=0,
sizeFactors=c(.5,1,1,2),
dispMeanRel=function(x) .01)
# add a few rows with very high count
counts(dds)[4:10,] <- 2e5L
# in this robust version, the counts are comparable across samples
round(head(fpm(dds), 3))
# in this column sum version, the counts are still skewed:
# sample1 < sample2 & 3 < sample 4
round(head(fpm(dds, robust=FALSE), 3))
# the column sums of the robust version
# are not equal to 1e6, but the
# column sums of the non-robust version
# are equal to 1e6 by definition
colSums(fpm(dds))/1e6
colSums(fpm(dds, robust=FALSE))/1e6
Run the code above in your browser using DataLab