This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Blog: How I caught a problematic RNA-seq sample before it ruined my differential expression analysis

I recently ran a small RNA-seq analysis with 12 samples split across two conditions. Everything looked fine at first glance. Sequencing depth was decent, alignments completed successfully, and I was already preparing to run differential expression.

Out of habit, I generated a PCA plot before starting DE analysis.

One sample immediately stood out.

Instead of clustering with its biological replicates, it was sitting far away from every other sample. At first I assumed it was just natural biological variation, but after digging deeper, it turned out there was something wrong with the sample itself.

I checked:

  • Mapping rates
  • Read counts
  • Sample-to-sample correlation
  • PCA
  • Clustering heatmaps

The mapping rate wasn't terrible, but it was noticeably lower than the rest. More importantly, the correlation heatmap showed that this sample was poorly correlated with every replicate in its group.

If I had continued directly to DESeq2, this one sample would have inflated variance estimates and potentially hidden real biological signals.

What surprised me is that none of the standard pipeline steps actually failed. STAR completed successfully. Quantification completed successfully. No obvious error messages anywhere.

The only reason I noticed the issue was because I spent a few minutes looking at the QC visualizations.

Since then I've made it a rule that I never run differential expression without checking:

  • PCA plots Sample correlation heatmaps Library size distributions
  • Mapping statistics

Those four checks have saved me multiple times.

For newer RNA-seq users, I think PCA is probably the most underrated QC plot. It takes seconds to generate and can immediately reveal outliers, batch effects, sample swaps, or failed libraries.

I recently wrote a more detailed walkthrough on interpreting RNA-seq QC plots and sample clustering here:

https://notchbio.app/blog/pca-clustering-rna-seq-qc-python

Curious how others approach this. Have you ever found a sample that looked completely normal until you visualized it?

rna-seq rna pca qc

PCA is Standard Operating Procedure in RNA-seq pre-processing. And I think DESeq2 should indicate outliers within replicates if it encounters one. It would take actively ignoring evidence to present any biological significance in the dataset, so what you've done is pretty much standard.

PCA is the most standard thing to do, is this clickbait?

It does seem like a shadow post to get visits to NotchBio. I've made it harder for this to be click-bait. It will take active URL copy-paste now.

0 answers

No answers yet.

Log in to answer this question.