PCR duplicates in NGS - I

在做NGS data處理的時候,常常會遇到需要remove PCR duplicates的步驟。

在網上查了一下 PCR duplicates的來歷,有兩個資料講的比較詳細。

但是這兩個資料側重的點不太一樣,這裡節選翻譯+總結一下這兩份資料,供將來研究作參考。

這裡是第一份資料,另一份資料在下一篇文章中。

原文:How PCR duplicates arise in next-generation sequencing

Dec 11, 2012 by ericminikel.

http://www.cureffi.org/2012/12/11/how-pcr-duplicates-arise-in-next-generation-sequencing/How PCR duplicates arise in next-generation sequencinghttp://www.cureffi.org/2012/12/11/how-pcr-duplicates-arise-in-next-generation-sequencing/?

www.cureffi.org

一般來說,建庫測序的過程分為下面六步:

1, 用超聲波等方法將基因組DNA打碎。

2,對打碎得到的DNA片段加接頭。

3,PCR擴增加了接頭的DNA片段。

4,將擴增後的產物「灑」在flowcell上,目的是一個bead上抓取到一個DNA片段分子。

5,在bead上進行PCR擴增反應,保證後面測序時可以讀取到足夠強的信號。

6,測序(各測序平台有自己的技術:pyrosequencing (Roche), reversible terminator chemistry (Illumina), or ion semiconductor (Ion Torrent)).

PCR duplicates是在第3步產生的。

理想情況下,對打碎的基因組DNA,每個DNA片段測且僅測到一次。

而第三步擴增了6個cycle,那麼每個DNA片段有了64份拷貝。將擴增後所有產物「灑」到flowcell,來自一個DNA片段的兩個拷貝,可能會錨定在兩個bead上,經過測序得到的這兩條read,就是PCR duplication。

一般來說,如果PCR duplication rate過高,那麼同樣總數目的reads,所提供的關於基因組的信息就大大減少了。

那麼PCR duplication rate跟什麼因素相關呢?

下面通過一個簡單的計算來說明這個問題。

假設擴增後(第3步後)準備上機測序的DNA總質量為1ug。建庫時候擴增了6個cycle,也就是每個DNA片段有2^6=64份拷貝。原始的(擴增前)DNA片段總質量=1ug/64=15.6ng.

一個鹼基對的分子量為 660g/mol, 即 660 g per mol per bp. 假設我們打碎的DNA片段長度都為200bp,那麼一個片段的分子量 = 200bp*660g/mol = 220 bp * 660 * 10^9 ng/mol

那麼 原始的(擴增前)DNA片段總數目=15.6 ng / (220 bp * 660 * 10^9 ng/mol ) = 1.07438e-13 mol

由於1mol 單位中包含 6.022×10^23 個粒子,那麼1.07438e-13 mol對應 1.07438e-13 *6.022×10^23 = 64699163600 ~ 7e10 個分子。

也就是說,基因組被打碎後得到了 7e10 獨特的DNA片段。

註:阿伏伽德羅常數用於代表一摩爾物質所含的基本單元(如分子或原子)之數量,在一般計算時,常取6.02×10^23或6.022×10^23為近似值(來源,維基百科:https://zh.wikipedia.org/wiki/阿伏伽德羅常數)

如果我們對人的基因組進行測序(3G bp),測序深度為20x,read長度為100bp,那麼對應了大約 3e9 bp /100bp * 20x = 600M reads. 一個read來自一個bead,也就是有600M個beads。

到這裡,我們有7e10 獨特的DNA片段,每個片段在上機測序前有64份拷貝,它們會 600M beads隨機進行雜交。

平均來看,一個DNA片段被一個bead「抓住」的幾率 = 600M/7e10=6e8/7e10=0.0085.

為了了解PCR duplicates rate,我們需要知道這7e10個獨特的DNA片段,被0個、1個、2個... bead抓住的幾率,體現在最後read中就是0個read,1個read,2個reads...

由於一個DNA片段被一個bead「抓住」的幾率很低,我們可以用Poission distribution來刻畫這個過程。

Poisson distribution的概率密度函數 = λke-λ/k! , k=0,1,2,...n.

這裡, λ 就是一個DNA片段被一個bead「抓住」的幾率=0.0085. 而 k 就是一個獨特的DNA片段被幾個bead抓住。

k=seq(0,10,1)names=as.character(k)barplot(dpois(k,lambda=0.0085),names.arg=names,xlab="Number of times a given molecule is represented in reads",ylab="Probability")

由於beads的數目遠遠小於DNA片段總數,因此大部分DNA片段根本木有被測到。

而我們關注的是「1」 bar和它右邊的所有bar。因此我們把「0」bar去除掉,再看:

k=seq(1,10,1)names=as.character(k)barplot(dpois(k,lambda=0.0085),names.arg=names,xlab="Number of times a given molecule is represented in reads",ylab="Probability")

從這個圖上來看,如果一個DNA片段被測到了(因為我們把k=0的都扔掉了),那麼它很大機會是只被測到了一次。而如果它被測到了2次或更多次,這就造成了PCR duplicates.

我們算一下被測到的DNA片段(無論被測到幾次)的比例:

sum(dpois(k,lambda=.0085)/k)/(1-dpois(0,lambda=.0085))

sum(dpois(k,lambda=.0085)/k) 就是在數 count(1)/1+count(2)/2 + ..., 也就是總計測到的、獨特的DNA分子有多少個。被除數(1-dpois(0,lambda=.0085)) 是所有測出來的reads數目。

結果為0.9979, 即 0.21% PCR duplicates.

現在,我們假設,我們打碎基因組DNA後,得到了9e9個DNA片段,在第三步擴增時候,進行了9個cycle,也就是每個DNA片段被擴增了512倍。那麼 Poisson distribution中的lambda=6e8/9e9 = 0.067. 即一個DNA片段被一個bead抓住的概率為0.067.

sum(dpois(k,lambda=.067)/k)/(1-dpois(0,lambda=.067))

結果為0.983,也就是有1.7% PCR duplicate rate。

k=seq(1,10,1)names=as.character(k)barplot(dpois(k,lambda=0.067),names.arg=names,xlab="Number of times a given molecule is represented in reads", ylab="Probability")

可以看出,相比較lambda=0.0085的柱狀圖,k=2的柱子明顯變高了,也就是說更多的DNA片段被測到了兩次,PCR duplicates rate上升了。

更極端的情況,如果我們打碎基因組DNA後,得到了1e9個DNA片段,在第三步擴增時候,進行了12個cycle,也就是每個DNA片段被擴增了4096倍。那麼 Poisson distribution中的lambda=6e8/1e9 = 0.6. 即一個DNA片段被一個bead抓住的概率為0.6.

sum(dpois(k,lambda=.6)/k)/(1-dpois(0,lambda=.6))

=0.85, 即有15%的reads都是PCR duplicates。

k=seq(1,10,1)names=as.character(k)barplot(dpois(k,lambda=0.6),names.arg=names,xlab="Number of times a given molecule is represented in reads", ylab="Probability")

從這幅圖中可以看的更明顯。

到這裡,我們可以看到:DNA片段/bead數目 這個比例越小,PCR duplicate rate越大。

原文作者下面還回答了一些讀者提出的問題:

「為什麼不準備一些DNA原材料,不做PCR,直接測序」

作者引用了Mike Talkowski (People) 的答案:

在第二步加接頭的時候,只有一小部分DNA片段可以成功加上接頭,第三步會把成功連上接頭的DNA片段進行擴增,此時待上機的產物大部分都是有接頭的DNA片段了,而上機後,只有有接頭的DNA片段才可以被bead抓取到。

如果不做PCR,直接從第二步到上機,那上機產物中大部分都是沒有接頭的分子,上機後bead也無法抓取這些分子。


推薦閱讀:

生物信息學100個基礎問題 —— 第10題 讀懂FastQC報告之adapter與kmer
南開大學師生解讀SARS病毒是否是生物武器
NCBI(美國國家生物技術信息中心)的資源架構(二)首頁面看到的其他內容
Analyzing RNA-seq data with DESeq2翻譯(3)
生物信息學100個基礎問題 —— 第5題 測序建庫的adapter

TAG:生物信息學 | 測序 |