I have some RNA-Seq data from leukaemia patients. I want to do unsupervised clustering on them with some other published leukaemia RNA-Seq data and see how they cluster. There are a few problems I encountered while doing this.

  1. I read mix messages of whether using log2(TPM) or rlog(counts) (e.g. Deseq2 rlog or limma voom transformation) for clustering. Which one should I choose?

  2. If I am filtering out genes with low counts, should I do it prior normalisation to library size or after?

  3. I tried using filterByExpr from edgeR for filtering but it removed many of the genes that are only expressed by subtypes with small sample number. If I am to filter the counts "manually", is there a recommendation of how the threshold should be set?

  4. If I should use log2(TPM) for unsupervised clustering, can I treat low TPM (e.g. <2) as 0? As this paper suggested TPM < 2 basically means no expression, is it alright to treat them as 0?


1 Answer 1

  1. rlog(normalized counts) is going to be more robust than log2(TPM), so use it instead.
  2. Do it afterward, keeping the low counts can be helpful for library-size normalization.
  3. This is very much more of an art than a science, though have a look at the kOverA() function from the genefilter package. That will give you a bit more fine-grained control on filtering.
  4. You'd be better off using something like zFPKMs if you want to filter by "expressed or not", since there's no really great definition of that.
  • $\begingroup$ Thanks Devon! Your answers clear things up for me. May I also ask at what point is transformed TPM/FPKM/other metrics of same sort be useful? I think this is also something bothering some wet lab biologists who just start doing bioinformatics. $\endgroup$
    – Kent
    Commented Aug 16, 2018 at 10:06
  • $\begingroup$ FPKM/RPKM should essentially never be used. TPMs would work fine here as well, but more so if you make them from normalized counts. The general thing with these transformed metrics is that they try to take gene/transcript length into account. That's fine for some things but it'll change how you might interpret clustering results (at least if you don't scale things). $\endgroup$
    – Devon Ryan
    Commented Aug 16, 2018 at 10:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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