ExN50 computes expression of 'gene' and not trinity transcripts in de novo assembled transcriptome

I would like to compute the ExN50 statistic for a de novo transcriptome assembled with trinity.
Following the steps indicated on the trinity github page I, in order:

  1. Aligned reads back and estimated abundances (kallisto)
  2. Built expression matrix (kallisto)
  3. Computed the ExN50 stat

However, even if the transcriptome is composed by about 37.000 transcripts, the ExN50 stat is finally based on only about 27.000 transcripts. These correspond to the trinity gene to transcript mappings.

My questions are:

  • How is it possible?
  • Is that a reasonable “approximation” to compute this statistic?

Thank you for your help!

Finally I ended up with an answer.
I report here the answer of Brian Haas to the same issue posted by another trinity user


The ExN50 now intentionally works off of the ‘gene’ rather than the transcript. The transcript based value can be a bit misleading because you can have long transcripts that are, after quantification, presumed to be lowly expressed and these can end up contributing to longer N50 values at low expression levels (artifactually)

Hope this helps,