1. 程式人生 > >如何劃窗統計測序資料的reads數(depth)

如何劃窗統計測序資料的reads數(depth)

      對於公司送回來的測序資料,我們通常需要進行質檢,檢查資料是否符合我們要求的測序深度,在質檢中,統計各個位點的depth就顯得尤為重要。

      最常見的統計depth的方法就是使用samtools depth,但是這個方法僅僅侷限於對單個位點進行depth進行統計,那麼有時候我麼你需要使用滑動視窗來對區間進行統計,這樣可以觀察在整條染色體上測序深度的變化趨勢,從而發現已經問題,比如CNV等,這個時候我推薦另一種方法bedtools coverage.

      具體使用方法:

      1. bedtools makewindows -g genome.txt -w 10000000 -s 1000000 > windows.bed

    #bedtools makewindows用來自動生成劃窗區間。-g genome.txt是要劃分的基因組,格式為兩列:染色體、染色體長度;-w 10000000為視窗大小為10M;-s 1000000為步長為1M,即視窗在染色體上每次向右平移1M的距離;windows.bed為輸出檔案,格式為三列:染色體、區間開始位點、區間結束位點。

    

      2. bedtools coverage -a windows.bed -b xxx.sort.bam > xxx.depth.txt

    #bedtools coverage對劃分好的每個滑動視窗進行reads數(depth)的統計。-a windows為上一步劃分好的區間;-b xxx.sort.bam為測序資料mapping到參考基因組的比對檔案;xxx.depth.txt為統計結果的輸出檔案,格式為7列:染色體、區間起始位點、區間結束位點、該區間內的reads數、

該區間內的鹼基數、區間大小、該區間的平均覆蓋度

    #關於xxx.sort.bam檔案的幾點說明

    1. 一般將測序資料mapping到參考基因組之後的輸出檔案為sam檔案格式,需要先用samtools view -bS xxx.sam > xxx.bam轉換為bam格式

    2.xxx.bam還需要進行排序和建立索引才能用於後續的統計:

    samtools sort xxx.bam xxx.sort   ##輸出結果為xxx.sort.bam

    samtools index xxx.sort.bam      ##輸出結果為xxx.sort.bam.bai