【最近拿到了近1TB的全基因組測試數據,在數據分析以前,有必要對數據質量進行評價】html
在二代測序過程當中,測序儀經過熒光成像讀出每個DNA或者RNA序列的鹼基類型。在大量的閱讀識別鹼基過程當中,不免會有各類各樣的錯誤。因此,當咱們拿到測序數據以後,不是急急忙忙地進行數據分析,而是首先應該對測序數據的質量進行評估,識別出可能存在的錯誤、錯誤的類型和對後續數據分析的潛在影響。git
一、文件完整性校驗github
因爲測序文件一般很大,在文件傳輸、存儲過程當中,不免會形成文件不完整。爲此,在得到測序數據的同時,測序公司還一般會提供一個MD5.txt的校驗文件。若是測序文件不完整或者被修改(哪一個僅僅是多了一個空格),MD5校驗碼也會出現天壤之別。ide
上圖是兩個測序文件和一個MD5.txt校驗文件(含有兩個測序文件的校驗碼),在Linux下,經過md5sum命令來生成校驗碼,而後和MD5.txt中給出的校驗碼覈對。
工具
二、FASTQ文件測試
FASTQ包含了每個讀長最原始的信息,一般每4行來描述一個讀長。編碼
第一行:以@開頭,而後是一串和測序過程相關的信息spa
第二行:具體的ACGT核酸序列3d
第三行:以+號開頭,和第一行類似orm
第四行:一串字符組合,每個字符表明一個鹼基的質量評分,因此該行的長度應該和第二行鹼基的長度是一致的。
示例以下:
@SRR031716.1 HWI-EAS299_4_30M2BAAXX:3:1:944:1798 length=37
GTGGATATGGATATCCAAATTATATTTGCATAATTTG
+SRR031716.1 HWI-EAS299_4_30M2BAAXX:3:1:944:1798 length=37
IIIIIIIIIIIIIIIIIIIIIIIIIIIII8IIIIIII
表示該序列片斷的名字爲SRR031716.1,對應的DNA序列爲GTGGATATGGATATCCAAATTATATTTGCATAATTTG,而後對應的每個鹼基的質量評分爲IIIIIIIIIIIIIIIIIIIIIIIIIIIII8IIIIIII。每個鹼基的質量評分是用ASCII編碼來表示的,也就是Phred quality score。分值越高,表示該鹼基的準確性越好。
Phred Quality Score |
Probability of incorrect base call |
Base call accuracy |
10 |
1 in 10 |
90% |
20 |
1 in 100 |
99% |
30 |
1 in 1000 |
99.9% |
40 |
1 in 10,000 |
99.99% |
50 |
1 in 100,000 |
99.999% |
60 |
1 in 1,000,000 |
99.9999% |
三、讀長質量評估
對測序數據質量的評估一般使用FastQC軟件來完成,它是開源免費的工具,可以快速對測序數據進行檢測,而且生成很詳細的質量評估報告。
FastQC可以對整個測序文件中的讀長數據進行質量評估,並完成以下彙總圖:
其中X座標軸表示每個讀長中鹼基的位置,y座標軸表示質量評分。上圖是一個150bp讀長的測序,每個位置都表示出了該位置質量評分的分佈狀況。藍線表示質量評分的平均值,背景顏色綠色表示高質量評分區間,黃色爲可接受質量評分區間,紅色爲差質量評分區間。注意對於二代測序,在每個讀長末端出現質量評分必定程度的下降是正常現象。
四、每一個序列質量評分
以每個讀長序列爲質量評價單位,檢查是否存在一個讀長序列的評分廣泛偏低的狀況。若是存在很大比例的讀長序列評分偏低,多是因爲該序列在測序過程當中沒能被很好的顯影(如在顯影視界的邊緣等)。
五、每一個測序方格(tile)的質量評分
描述每個測序方格的質量,冷色調錶示該方格的鹼基質量評分在平均水平(之上),暖色調錶示在平均水平之下,一個理想的狀況是整個圖都是藍色的冷色調。
六、每一個序列鹼基含量(Per base sequence content)
該圖表示在一個讀長上每個位置的ACGT的比例。由一個隨機測序文庫產生的測序數據,ACGT四種鹼基在一個讀長的不一樣位置的比例應該是一致的,即四條線應該平行。有些建庫方法會形成讀長開頭和其餘部分四種鹼基分佈不一致,這是一種建庫形成的系統偏倚,它一般不會對下游數據分析形成影響,不過FastQC一般仍是會給出警告或錯誤提示。
七、每一個序列GC含量(per sequence GC content)
該圖展現了一個讀長序列中GC含量的分佈,藍線表示理論GC分佈狀況,紅線表示實際GC分佈。由一個隨機測序文庫產生的測序數據,其GC含量應該是藍線的正態分佈,峯值表示整個基因組GC含量的平均水平。若是紅線不是正態分佈類型,那麼可能意味着測序文庫污染,或其餘偏倚的存在。
八、每一個鹼基N含量(per base N content)
若是測序儀不能頗有把握的肯定一個鹼基類型,那麼一般會用N來代替這個位置可能的鹼基。上圖反應了每一個位置的N的比例。在測序中出現一些N是很正常的,尤爲是在讀長的末端。可是若是N的比例高達幾個百分比,就須要引發咱們的注意。
九、序列重複水平(sequence duplication levels)
在一個理想的測序文庫中,大多數的序列應該只出現一次。若是屢次重複出現,那麼可能意味着存在必定程度的富集偏倚(如PCR過分擴增等)。FastQC軟件可以計數每一種序列的重複出現次數。如上圖,藍線是表示測序文庫中全部序列的重複次數分佈狀況,紅線是去重以後的分佈狀況。正常狀況下,藍線和紅線的峯值都應在在座標軸作左端。而若是出現了過多的重複序列,那麼峯值會變低,曲線變平。可能意味着存在測序文庫的污染或者嚴重的技術偏倚致使過多的重複序列。
10、總結
二代測序的特色致使了其讀長末端測序錯誤率增大,由於有必要對測序數據進行過濾和篩選,以提升數據質量,避免對下游數據分析產生影響。
應當剔除的讀長序列:
· 平均質量評分太低
· 太短
· 含有過多不肯定鹼基(N)
· GC含量偏倚嚴重
應當被屏蔽的序列區域:
· 質量評分較低的區域
· 序列的起始端和末端
· 測序配體(adaptor)
軟件實現:
· FastQC:測序數據質量評價
· Cutadapt:對數據進行過濾刪減,提高數據質量
===== THE END ====
參考資料:https://galaxyproject.github.io/training-material/topics/sequence-analysis/tutorials/quality-control/tutorial.html