RNA-Seq data 的分析過程中如何調試各個程序的參數以保證分析質量?

RNA-Seq analysis 的基本過程中涉及到alignment, transcript quantification, DE analysis等等。在這些過程中會涉及到不同的程序(例:HISAT, stringTie), 如何調試各個程序的參數已提高RNA-Seq analysis的質量呢?


讀DPhil以來,一直自己做RNA-seq,分析自己的數據,分析組裡其他人的數據,分析和我們組合作的數據。

其實對RNA-seq數據的分析,並不能用「調參數」去形容。調參數對比較計算建模或者機器學習的問題來說更適用一些,然而對這等生物學問題就要另當別論了。

針對Bulk RNA-seq的數據分析已經非常成熟了,所以只要按著protocol走(例如用edgeR或者DESeq),基本不會有太差偏差。如果題主問的是特殊方法的RNA-seq或者單細胞測序(話說這周四又要去跑一波384單細胞RNA測序),我再回來補充回答吧。

現在能想到的主要有兩點(不想查文獻了),想到再更新吧。

1. 注重QC。每一步都QC看看。

1.1 Fastq QC。在拿到Fastq files後,用FastQC (FastQC A Quality Control tool for High Throughput Sequence Data)看看測出來的reads是不是好的,好的標準參照這一篇(good_sequence_short.txt FastQC Report)。

1.2 Mapping後QC:Picard tools(Picard Tools - By Broad Institute)或者RSeQC(RSeQC: An RNA-seq Quality Control Package)。

1.3 Raw counts後再QC。看看看家基因是不是都表達,有多少基因或transcript被檢測到。我個人喜歡scater(davismcc/scater),其中的一個作者凱倫是我們組一個有點帥的蘇格蘭小哥(偏題了)。scater是用來在single cell數據里QC的,但我覺得在bulk里也好用。

1.4 初步的visualisation。畫畫PCA,tSNE這些圖,看看samples是不是合理的在一起,也可以看到一些batch effect,如果有的話,可以嘗試normalisation和removal of batch effects (RUV package in R).

2. 結合已知的生物學背景知識。

2.1 測序的樣本一般還是心裡有數的,起碼知道裡面應該有哪些必須的基因。就比如測T細胞吧,裡面起碼有一些CD45吧;測上皮細胞的話,裡面應該有EpCAM吧。如果題主專職數據分析,那就只能和生物上的合作者多討論了。

2.2 在做differential expression analysis的時候,給出的differentially expressional (DE) genes,應該看一下,看看是不是有一個符合已知的生物學知識的。

2.3 在GOEA (gene ontology enrichment analysis)或者pathway分析時,這個時候假陽性和假陰性是不可避免的,要多用幾種演算法比對一下,例如topGO(topGO)里的classic,elim和weight。

建議自己google幾篇tutorials或者reviews來看。用中文回答好吃力 ♀?。

強迫症還是加上文獻引用吧:

1. Scater: pre-processing, quality control, normalization and visualization of single-cell RNA-seq data in R. (2017). Scater: pre-processing, quality control, normalization and visualization of single-cell RNA-seq data in R., 33(8), 1179–1186. http://doi.org/10.1093/bioinformatics/btw777

2. Picard tools http://broadinstitute.github.io/picard.

3. FastQC: FastQC A Quality Control tool for High Throughput Sequence Data

4. RSeQC: quality control of RNA-seq experiments. (2012). RSeQC: quality control of RNA-seq experiments., 28(16), 2184–2185. http://doi.org/10.1093/bioinformatics/bts356

5. Gene set enrichment analysis with topGO. (2016). Gene set enrichment analysis with topGO, 1–26.

6. Differential expression of RNA-Seq data at the gene level – the DESeq package. (2016). Differential expression of RNA-Seq data at the gene level – the DESeq package, 1–24.

7. edgeR: differential expression analysis of digital gene expression data User』s Guide. (2016). edgeR: differential expression analysis of digital gene expression data User』s Guide, 1–105.


本人和StringTie的第一作者有過一些交流。他傾向於我多拿一些樣本做測試。而且會不定期向我詢問Cufflinks的組裝結果和StringTie結果有何不同。至於參數設置沒有捷徑,需要有幾個步驟,同樣本不同參數組裝結果,不同物種同參數組裝結果。同樣本不同軟體組裝結果。有時候還會引入極端樣本來考驗軟體的「可靠性與忠誠度」。建議你可以去看一些軟體測試類的paper 向大牛學習測試的科學方法。HISAT在mapping的option 上比tophat要少,至少以前tophat會分植物參數和動物參數,我現在HISAT就一套參數用到底。對了忘記說最重要的,軟體的manual一定要多看哦 耐心耐心耐心再耐心!


推薦閱讀:

如果只把有用的基因拼接起來,會變成什麼樣?

TAG:遺傳學 | 生物學 | 生物信息學 | RNA | 測序 |