Hello everyone, I want to do splicing analysis using differential exon usage(DEU) in edgeR. I have obtained the counts from Salmon; however, as you know it gives as transcript level.
For DEU, I need exon level counts. I'm avare that I can use it through featureCounts but do you have any recommendations about using Salmon for this purpose?
Thank you.
1 answer
If you want to detect differential splicing using edgeR with Salmon output, then you should do DTU instead of DEU, see:
Baldoni PL#, Chen L#, Li M, Chen Y, Smyth GK (2025). Dividing out quantification uncertainty enables assessment of differential transcript usage with diffSplice. bioRxiv https://doi.org/10.1101/2025.04.07.647659.
If you really want to do DEU, then you must go right back to scratch and do full read alignment, see Section 4.5 of the edgeR User's Guide for a fully-worked example: https://www.bioconductor.org/packages/release/bioc/vignettes/edgeR/inst/doc/edgeRUsersGuide.pdf
BTW, diffSpliceDGE() is now obsolete in the most recent version of edgeR. We recommend edgeR::diffSplice now for both DEU and DTU.
Log in to answer this question.
salmonis not meant to do exon level read counting. See --> Salmon quantification vs HTSeq count quantificationCould you provide each exon as a "separate transcript" in your reference when you do counting? You could, but that will not be reflective of the eukaryotic biology.
I see, thank you. So do you suggest using featureCounts instead?
Providing each exon as an individual transcript will throw off pseudoalignment-type algorithms which assume that each read originated from some transcript.
If each exon is a transcript and multiple exons are encountered in a read, the read will not be mapped by salmon.