Question 9 of 20 Fundamentals Practical
How do you find out whether an RNA-seq library is stranded, and why does it matter?
Short answer
Check the kit in the lab record, then confirm from the reads, for example with Salmon's automatic library type detection, which reports which strand read 1 comes from. A wrong strand setting can silently discard most reads or miscount antisense and overlapping genes.
Why
Early RNA-seq protocols primed with random hexamers and lost the information about which DNA strand a transcript came from. Stranded protocols, such as the widely used dUTP method, mark the second cDNA strand and destroy it, so every read keeps its orientation. That orientation lets a counting tool assign a read to the right gene when two genes overlap on opposite strands, and it makes antisense transcription visible.
The cost is that the analysis must be told the correct orientation. Salmon describes a library with a short code. IU is an unstranded paired-end library.
ISR is a stranded paired-end library where read 1 comes from the reverse strand, which corresponds to TopHat's fr-firststrand setting. ISF is the opposite. Since version 0.7.0 Salmon can guess the type from how the first few thousand reads map, when run with -l A.
If a reverse-stranded library is counted as forward-stranded, most reads land on the wrong strand and are discarded as unassigned, or are given to an antisense gene. The result looks like a low assignment rate, not like an error message.
How to work it through
- Read the library kit and protocol in the sample record before touching the data.
- Run Salmon on the sample with the library type set to A and note the type it reports.
- Compare that result with what the kit should produce, and treat any disagreement as a question for the lab.
- Set the matching strand option in every downstream counting step.
- Confirm that the share of reads assigned to genes rises to a sensible level with the chosen setting.
An example
In a hypothetical project, a paired-end library was made with a dUTP kit, and Salmon with -l A reports ISR. The counting step had been run with the forward-stranded setting and assigned 6 percent of read pairs to genes. Rerun with the reverse-stranded setting, it assigns 74 percent.
The first run would have produced a usable-looking count table built from a small, biased subset of reads, mostly from genes with antisense neighbors.
Where the answer stops holding
Automatic detection relies on reads mapping to annotated transcripts, so a poorly annotated organism or a library with heavy genomic DNA contamination can give an ambiguous call. A result close to half forward and half reverse means unstranded, or a stranded library that failed. Detection does not replace checking the protocol, which Salmon's own documentation also recommends.
A strong answer covers
- Stranded protocols such as dUTP preserve the transcript's orientation
- Confirm strandedness from the data, not only from paperwork
- Salmon codes such as IU, ISR and ISF describe orientation and strand
- A wrong setting shows up as a low assignment rate, not an error
Common mistakes
- Leaving the counting tool on its default strand setting without checking
- Assuming every modern library is stranded in the same direction
- Reading a low assignment rate as poor library quality instead of a parameter error
The interviewer might ask next
How would overlapping genes on opposite strands be counted in an unstranded library?