一開始拿到三代測序的下機數據時,蒙了,readme ?三代測序的下機數據都有哪些,以及他們具體的格式是怎么樣的(以sequel 平台為主)。
測序過程
SMRTbell
A adapter通用接頭,兩端的接頭可以一樣也可以不一樣
B barcode(客戶自己設計)
I insert 插入片段,即我們測序的目的片段
由於SMRTbell是環狀的,測序過程是邊合成邊測序,因此可以沿着新鏈合成的方向不停地讀取序列,讀取一圈又一圈,直到聚合酶累趴下了…
測序結果
根據SMRTbell的形狀以及測序的過程,我們容易知道,測序出來的reads如上圖所示,由接頭序列, 條碼序列, 插入序列間隔線性分布,即ABIB-ABIB—ABIB-ABIB—…(A: adapter, B: barcode, I: insert)
ZMW read 是測序出來的完整結果,也即是polymerase read,聚合酶合成過的所有的序列。
PostPrimary 分析后輸出HQ region,由ZMW read 去除兩端低質量區域得到。
收到的測序文件
RS II
Sequel
在下機文件中,主要有三類文件,bam 文件,bam.pbi 文件,以及xml文件。
當我們習慣性的去尋找熟悉的fastq格式文件做分析時,忽然發現找不到了,因為在sequel平台中bam 文件成為了它的替代者,因為其更節約儲存空間。這是文件格式的一個重大更新。
用於后續分析的文件一般是.subreads.bam,這等同於RS II 中的.subreads.fastq
下面仔細聊聊三類主要文件的具體格式,以及他們分別干什么活的。
Pacbio 的BAM 文件格式
我們平常見到的bam文件大多是比對結果文件,例如用重測序分析中BWA生成的bam文件就是reads與基因組的比對文件。但pacbio的下機文件是沒有與基因組進行過比對過的,其主要作用就是儲存序列。
Bam文件主要分為兩個部分,頭一部分是Header,儲存測序的相關信息,另一部分也即是文件的主要部分是records,這里頭保存了我們的序列信息。我們這里就以subreads.bam文件為例,分析下bam文件的具體格式。
可以用samtools view 命令查看bam文件
第一列:reads信息
{movieName}/{holeNumber}/{qStart}_{qEnd}
[對於CCS:{movieName}/{holeNumber}/ccs]
MovieName 是cell的名字,holeNumer是ZMW孔的編號,qStart和qEnd是subreads相對於ZMW reads的位置。
第二列 (sum of flags):比對信息 均為4 代表沒有比對上,也表明了bam文件只儲存了序列信息,而沒有比對信息。
第三列 (RNAM):參考序列 值為 ,代表無參考序列
第四列 (position) : 比對上的第一個鹼基位置 0
第五列 (Mapping quality) : 比對質量分數 255
第六列 (CIGAR值) : 比對的具體情況
第七列 (MRNM, ) : mate 對應的染色體
第八列 (mate position) : mate對應的位置 0
第九列 (ISIZE, Inferred fragment size) : 推斷的插入片段大小 0
第十列 (Sequence) : 序列信息 具體的ATCG
第十一列 (ASCII碼) : 鹼基質量分數 ASCII+33
第十二列 : 可選區域 記錄Reads 的總體屬性包括信號長度,信號強度等信息。
BAM 文件分別都是些什么?
-
zmws.bam 以及ccs.bam似乎公司並不一定會提供
-
經過檢查,一條zmw reads 可以產生多條 subreads,也就是說subreads.bam 中,序列只是被剪下來了。
-
scraps.bam 格式保存的是獲取subreads時廢棄的序列,包括adapter,以及一些低質量的序列
-
CCS.bam保存的是矯正后的一致性序列。
BAM.pbi 文件
是bam文件的索引文件(PacBio BAM index),與上一個版本(RS II)的*cmp.h5文件兼容,其格式類似於HDF5, 通過BGZF格式壓縮。
其存在主要有兩個作用
隨機訪問
通過參考序列,基因組區域
通過read 組別
通過qurey name
通過ZMW
通過barcode
其他
在無需完全訪問BAM文件的情況下,獲取信息
獲取統計信息
通過提供index訪問記錄信息
XML 文件
MetaData, 儲存數據描述。可用於filter 或者subset等功能。
sts.xml 儲存數據的統計信息。
SMRT Link CL tools in 5.0.0 dataset命令可以進行方便的操作。
參考資料
http://pacbiofileformats.readthedocs.io/en/5.0/