I have an RNA-seq dataset and I am using DEseq2 to find differentially expressed genes between the two groups. I used pre-filtering to remove any genes that have no counts or only one count across the samples. furthermore, I want to:

  • remove genes in low counts by using a base mean threshold.

  • remove genes that have low counts compared to the rest of the genes.


Is there a common threshold used for the baseMean or a way to work out what this threshold should be?


1 Answer 1


Adding my answer from the crosspost:

I would not use the baseMean for any filtering as it is (at least to me) hard to deconvolute. You do not know why the baseMean is low, either because there is no difference between groups and the gene is just lowly-expressed (and/or short), or it is moderately expressed in one but off in the other. The baseMean could be the same in these two scenarios. If you filter I would do it on the counts. So you could say that all or a fraction of samples of at least one group must have 10 or more counts. That will ensure that you remove genes that have many low counts or zeros across the groups rather than nested by group, the latter would be a good DE candidate so it should not be removed. Or you do that automated, e.g. using the edgeR function filterByExpr.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.