您好,登錄后才能下訂單哦!
這篇文章主要講解了“MarkDuplicates的作用是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“MarkDuplicates的作用是什么”吧!
在數據預處理中,有一個很重要的步驟就是MarkDuplicates
, 字面意思就是標記重復序列。重復序列是如何產生的,為什么要標記重復序列呢?
首先來看重復序列產生的途徑,有以下兩種
PCR duplicates
這個很好理解,PCR根據一份模板,擴增出多份拷貝,來源于同一模板的多份拷貝之間就是PCR重復序列
Optical duplicates
illumina測序儀的基本單位是flowcell,測序反應在flowcell上發生和進行,高密度的flowcell使得測序的通量顯著提升,也帶來了序列重復讀取的問題。雖然比例非常低,但是也需要考慮進來。
GATK官方對PCR重復和系統重復進行了統計,可以看到,PCR重復的比例隨著測序量的增加而增加,而Optical duplicates 重復序列的比例是一個隨機分布,總是存在的,其比例相對穩定,在是在一定范圍內波動,符合系統誤差的特性。
之所以要標記重復序列,是為了下游的SNP分析。SNP位點的識別,簡單理解可以看做一個概率問題。比如下面兩種情況:
情況A
基因組上某位點堿基為A, 有100條reads 覆蓋到該位點。 其中99條都為A, 1條為C;
情況B
基因組上某位點堿基為T, 有100條reads 覆蓋到該位點。 其中54條為T, 46條為C;
上述兩種情況都檢測到了兩種堿基,是不是意味著檢測到了兩個SNP位點呢?
當然不是,情況A中C堿基的比例為1%,很可能是測序錯誤,當然不能算是一個SNP位點;情況B只從reads分布看,可以認為是一個候選的SNP位點,當然還要分析其他的因素才能判斷是否是一個snp位點。從這里也可以看出, reads 的計數對于SNP位點的檢測特別的重要。
但是這里的reads 指的是有效reads , 是實際在樣本中存在的reads的數目。在計數時,重復序列只計數1次。MarkDuplicates
的作用就是標記重復序列, 標記好之后,在下游分析時,程序會根據對應的 tag 自動識別重復序列。
重復序列的判斷方法有兩種:
序列完全相同
比對到基因組的起始位置相同
序列完全相同時,認為是重復序列當然沒什么大問題。雖然會有同源性,重復序列等因素的影響,但是概率非常之小,基本上可以忽略不計;比對位置相同也認為是重復序列,是因為在測序過程中,會存在測序錯誤,本身完全一樣的序列, 可能測序得到的的reads并不完全相同(可能有幾個堿基不同),而且在去除低質量的過程中,也會有所差異(末端切除的低質量堿基數不同), 所以最終根據比對基因組的結果進行判斷。如果序列比對到基因組上的起始位置是相同的,就認為是重復序列。
GATK4 標記重復序列的命令如下:
soft/gatk-4.0.4.0/gatk MarkDuplicates -I input.bam -M metrc.csv -O marked.bam
在輸出的bam文件中,借助第二列的flag 來標記重復序列,flag的值是多種情況的疊加,其中1024代表重復序列
samtools flags 1024
0x400 1024 DUP
在生出的bam文件中,通過flag的值可以知道該序列是否為重復序列。
通過flag已經可以知道哪些是重復序列了,對于gatk 下游分析而言,已經足夠了。有時我們還會去除掉重復序列,在去除重復序列時,會根據序列的堿基質量值 ,選擇一個堿基質量值總和最大的reads 作為代表序列,保留下來。
感謝各位的閱讀,以上就是“MarkDuplicates的作用是什么”的內容了,經過本文的學習后,相信大家對MarkDuplicates的作用是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。