DESeq2 independent filtering using filter=rv
Entering edit mode
Last seen 7.0 years ago

I'm using DESeq2 for DE analysis.
I found in the "Beginner's guide to the "DESeq2" that it's possible to perform both default independent filtering (which uses mean of normalized counts as a filter statistics) and independent filtering with other filters, such as filter=rv. Could you please explain me this last filter? Is it a filter about variance? are we speaking about gene variance within the same group?

I applied both default independent filtering and independent filtering with filter=rv on my dataset and whereas in the first case I had no improvement in the number of statistically significant DE genes, in the second case I had more DE genes.
Could it be that this difference be due to a too low number of samples in my dataset, therefore a high variance within groups. therefore more powerful filtering using variance?
Thanks a lot for your help!

deseq2 INDEPENDENT FILTERING • 2.1k views
Entering edit mode
Last seen 38 minutes ago
United States

This line you refer to is in the main DESeq2 vignette:

rv <- rowVars(counts(dds,normalized=TRUE))
resFiltByVar <- results(dds, filter=rv)


Here, rv is the row variance of the normalized counts, and this is over all samples for each gene. So this is removing from the multiple test correction step those genes with small variance across all samples. It's hard to say why you get more experiment-wide power with the variance than the mean.

DESeq2 imports functionality from the genefilter package for independent filtering. You can read more about independent filtering from their paper:


Login before adding your answer.

Traffic: 459 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6