SAM/BAM 格式文件內(nèi)容解析

一率寡、首先需要知道以下幾個(gè)知識(shí)點(diǎn):

詳細(xì)內(nèi)容請(qǐng)參考:http://samtools.github.io/hts-specs/SAMv1.pdf

1.1-based coordinate system?

A coordinate system where the rst base of a sequence is one. In this coordinate

system, a region is specied by a closed interval. For example, the region between the 3rd

and the 7th bases inclusive is [3; 7]. The SAM, VCF, GFF and Wiggle formats are using the 1-based coordinate system.

2.0-based coordinate system

A coordinate system where the rst base of a sequence is zero. In this

coordinate system, a region is specied by a half-closed-half-open interval. For example, the region

between the 3rd and the 7th bases inclusive is [2; 7). The BAM, BCFv2, BED, and PSL formats are using the 0-based coordinate system.

3.模板(Template):

由測(cè)序儀測(cè)序所得或由原始序列組裝所得的DNA/RNA序列

4.片段(Segment)

一段連續(xù)的序列或者子序列

5.Read

一段由測(cè)序儀測(cè)序所得的原始序列伍绳。一條Read可能由多個(gè)片段組成,在測(cè)序數(shù)據(jù)中,reads是根據(jù)它們被測(cè)的順序來(lái)建立索引的。

6.Linear alignment(線(xiàn)性比對(duì))

一個(gè)Read單向地比對(duì)到參考基因組上蝠引,這個(gè)比對(duì)結(jié)果中可以有插入、缺失蛀柴、跳躍等螃概,但是不能存在“雙向”的比對(duì)結(jié)果,即Read的一段比對(duì)到正鏈參考基因組鸽疾、一段匹配到負(fù)鏈吊洼,這種方向切換是不允許的,在SAM文件中制肮,線(xiàn)性比對(duì)的特性就是:只用一行來(lái)記錄冒窍。

7.Chimeric alignment(嵌合比對(duì))

就是當(dāng)一條Read對(duì)比時(shí),比對(duì)到了多個(gè)區(qū)域豺鼻,但是這些區(qū)域并沒(méi)有重疊的部分综液,也即由多個(gè)“線(xiàn)性比對(duì)”結(jié)果組成了一個(gè)集合,這個(gè)集合就組成了一個(gè)嵌合比對(duì)儒飒,嵌合比對(duì)中只有一個(gè)“線(xiàn)性比對(duì)”結(jié)果是具有代表性的谬莹,其余的都以補(bǔ)充的身份出現(xiàn),嵌合比對(duì)的特征就是多個(gè)“線(xiàn)性比對(duì)”記錄中的Read對(duì)應(yīng)的Qname(Read的名字桩了,每個(gè)Read只有一個(gè)Qname)都是相同的附帽,且這些“線(xiàn)性比對(duì)”集合中的每個(gè)記錄的flag值都是一樣的。

8.Read alignment(Read 比對(duì))

無(wú)論是上面提到的線(xiàn)性比對(duì)還是嵌合比對(duì)井誉,只要能夠完整的表現(xiàn)出一條Read的對(duì)比情況蕉扮,就是一個(gè)Read 比對(duì)。

9.Multiple mapping(多次比對(duì))

由于序列的重復(fù)性颗圣,導(dǎo)致一個(gè)Read在比對(duì)時(shí)會(huì)被比對(duì)到多個(gè)區(qū)域上喳钟,其中只有一個(gè)比對(duì)質(zhì)量最好的會(huì)被當(dāng)做比對(duì)結(jié)果的代表性結(jié)果,目前來(lái)看在岂,這種決定方式還不是很?chē)?yán)謹(jǐn)荚藻。

多次比對(duì)和嵌合比對(duì)是有根本性區(qū)別的,多次比對(duì)是因?yàn)樾蛄斜旧砭哂兄貜?fù)性引起的洁段,屬于正常比對(duì)結(jié)果,而嵌合比對(duì)更多是由于實(shí)驗(yàn)共郭、測(cè)序祠丝、結(jié)構(gòu)突變疾呻、融合、以及其他因素引起的写半。

10.Phred scale:

一個(gè)可能性區(qū)間岸蜗,如果一個(gè)堿基被檢測(cè)正確的正確率是99%,那么錯(cuò)誤的概率就是1%=0.01=10(^-2)叠蝇,此時(shí)phredscore=-10log10(0.01)=20璃岳,


Phred score

二、SAM文件內(nèi)容解析

SAM文件由兩部分組成悔捶,頭部和主體铃慷,都以tab分列。

頭部?jī)?nèi)容主要以各種說(shuō)明為主蜕该,比如說(shuō)明所用軟件啦犁柜,參考基因組信息啦,排序信息啦等等堂淡,下面表格是SAM文件中涉及的一些專(zhuān)有名詞的解釋馋缅。

名詞定義

2.1頭部?jī)?nèi)容:

頭部?jī)?nèi)容說(shuō)明信息均是以@符合開(kāi)頭的,在頭部是以“@說(shuō)明類(lèi)型碼TAB鍵TAG:Value” 開(kāi)始的绢淀,每個(gè)標(biāo)簽和說(shuō)明類(lèi)型碼都是由兩個(gè)字母組成的萤悴,下面將列舉說(shuō)明類(lèi)型碼和TAG

2.1.1說(shuō)明類(lèi)型碼有HD、SQ皆的、RG覆履、PG、CO五種祭务;

2.1.1.1 HD(此文件的數(shù)據(jù)信息)

HD:代表意思為:SAM文件的開(kāi)頭標(biāo)志内狗、一般只要出現(xiàn)就會(huì)在第一行

HD中的標(biāo)簽(TAG)有:

VN*:注釋版本信息

SO:比對(duì)結(jié)果的排序類(lèi)型:有unknown、unsorted义锥、queryname柳沙、coordinate四種排序類(lèi)型

GO:比對(duì)結(jié)果的分組信息:相似的比對(duì)結(jié)果會(huì)被分到一組,這里的分組結(jié)果中并不是需要全部進(jìn)行過(guò)排序的拌倍,排序的類(lèi)型有:none (default)赂鲤、query (alignments are grouped by QNAME)、reference (alignments are grouped by RNAME/POS? 三種類(lèi)型

SS:子排序類(lèi)型柱恤,比如在某次算法中需要根據(jù)coordinate排序数初,而在每個(gè)coordinate排序的結(jié)果中又根據(jù)QNAME進(jìn)行了排序,則在SAM文件中就應(yīng)該表示為:@HD SO:coordinate SS:coordinate:queryname.如果在SO的基礎(chǔ)排序中梗顺,排序的類(lèi)型不在之前定義的四種排序類(lèi)型中時(shí)泡孩,則SO對(duì)應(yīng)的就應(yīng)該時(shí)unsorted,此時(shí)SS就會(huì)起主要作用寺谤,比如仑鸥,如果基礎(chǔ)排序是根據(jù)一個(gè)輔助標(biāo)簽MI排序的吮播,之后又根據(jù)coordinate排序的,則在SAM頭部中就應(yīng)該表現(xiàn)為@HD SO:unsorted SS:unsorted:MI:coordinate.

2.1.1.2?SQ(參考序列信息)

SQ:說(shuō)明類(lèi)型碼代表的含義為參考序列字典眼俊,SQ的排序決定了比對(duì)結(jié)果的排序順序

SQ中又以下標(biāo)簽:

1.SN*:參考序列名稱(chēng)

2.LN*:參考序列長(zhǎng)度

3.AH意狠、AN、AS疮胖、DS环戈、M5、SP(種族)澎灸、TP院塞、UR,這些不常用

例如:@SQ SN:JF-PLAC8_CT_converted LN:88

2.1.1.3?RG:樣本信息

Read Group击孩,每個(gè)Sample都有一個(gè)RG ID迫悠,一個(gè)Sample可以在多個(gè)庫(kù)中進(jìn)行測(cè)序。

RG對(duì)應(yīng)的有以下TAG:

ID*:Read group的唯一ID

BC:辨別樣本或文庫(kù)的標(biāo)簽序列

SM:樣品名

LB:文庫(kù)名

PU:測(cè)序儀

?PL:測(cè)序平臺(tái)

CN:產(chǎn)生read的測(cè)序中心的名稱(chēng)

2.1.1.4?PG (運(yùn)行程序信息)

?PG:程序 說(shuō)明類(lèi)型碼,PG中有以下幾個(gè)標(biāo)簽:

ID*:程序記錄標(biāo)識(shí)巩梢,每個(gè)程序記錄都只有一個(gè)ID

PN:程序名稱(chēng)

CL:命令行內(nèi)容(utf-8編碼)

PP:好像是指前一個(gè)?@PG-ID:不怎么用這個(gè)创泄,有了解的大哥大姐可以幫忙做個(gè)備注

DS:描述

VN:所用程序版本

2.1.1.5?CO (備注或評(píng)論信息)

以上就是五個(gè)說(shuō)明類(lèi)型碼代表的意思以及常用的標(biāo)簽意義。下面截圖作為例子括蝠,可以對(duì)照上面的內(nèi)容看一下:


SAM文件頭部信息舉例

2.2 主體內(nèi)容

SAM文件主體內(nèi)容中主要有11列內(nèi)容鞠抑,這11列中的內(nèi)容就如下表:

當(dāng)數(shù)據(jù)中這11列內(nèi)容哪個(gè)對(duì)應(yīng)內(nèi)容有缺失或者無(wú)效的話(huà)就用‘0' 或 `*'代替。

1.QNAME:Read ID忌警,就簡(jiǎn)單理解成Read的名稱(chēng)搁拙,其中會(huì)包含一些測(cè)序平臺(tái)信息

2.FALG:可以理解為比對(duì)結(jié)果的標(biāo)志,可以根據(jù)FLAG值篩選比對(duì)結(jié)果

FLAG的值代表含義如下表(本圖來(lái)自http://www.360doc.com/content/18/0329/12/28491187_741231514.shtml法绵,感謝作者箕速,如有侵權(quán)請(qǐng)聯(lián)系本人刪除)

FLAG值對(duì)應(yīng)表

FLAG值若記不住可以直接在<https://broadinstitute.github.io/picard/explain-flags.html>中進(jìn)行查詢(xún)。在SAM文件中出現(xiàn)的flag值是涉及到的value相加得到的值朋譬,比如99盐茎,177等,可以在上述網(wǎng)站查詢(xún)

3.RNAME:理解成比對(duì)上的染色體號(hào)即可

4.POS:比對(duì)到參考序列上的位置

5.MAPQ:比對(duì)質(zhì)量值徙赢,算法與文中第一部分Phred score算法一致:-10log10(錯(cuò)誤率)字柠,若值為255表示其比對(duì)結(jié)果不可用,如果是unmapped read則MAPQ為0

6.CIGAR(Compact Idiosyncratic Gapped Alignment Report)簡(jiǎn)要描述比對(duì)結(jié)果(來(lái)自http://www.360doc.com/content/18/0329/12/28491187_741231514.shtml狡赐,感謝作者窑业,如有侵權(quán)請(qǐng)聯(lián)系本人刪除)

簡(jiǎn)要比對(duì)信息表達(dá)式(Compact Idiosyncratic Gapped Alignment Report),其以參考序列為基礎(chǔ)枕屉,使用數(shù)字加字母表示比對(duì)結(jié)果常柄,比如3S6M1P1I4M,前三個(gè)堿基被剪切去除了,然后6個(gè)比對(duì)上了西潘,然后打開(kāi)了一 個(gè)缺口铜异,有一個(gè)堿基插入,最后是4個(gè)比對(duì)上了秸架,是按照順序的;

M”表示 match或 mismatch咆蒿;

“I”表示 insertion东抹;

“D”表示 deletion(表示的是READ和ref相匹配時(shí),參考基因組中需要deletion的部分沃测,不是READ)缭黔;

“N”表示 skipped(跳過(guò)這段區(qū)域);

“S”表示 soft clipping(被剪切的序列存在于序列中)蒂破;

“H”表示 hard clipping(被剪切的序列不存在于序列中馏谨,已經(jīng)在除去低質(zhì)量READ的時(shí)候被過(guò)濾了);

“P”表示 padding(填充)附迷;比如參考基因組序列本來(lái)為ATTACGAC惧互,read序列為ATAATACGAC,那么喇伯,如果在比對(duì)的sam結(jié)果文件中喊儡,有兩種比對(duì)方式,如下:

1.如果reference是padded reference稻据,也即參考基因組展示為AT**TACGAC艾猜,那么**就是代表了ref考慮了read序列的插入情況,但是這種表示情況下CIGAR中就不會(huì)再出現(xiàn)p和I(Insertion)了捻悯,因?yàn)閰⒖蓟蚪M中已經(jīng)考慮了插入的情況了匆赃。而如果有其他read跟這個(gè)padded ref比對(duì)時(shí),對(duì)于ref中pad的區(qū)域沒(méi)有序列的話(huà)今缚,就會(huì)以D(deletion)來(lái)表示這個(gè)read算柳。

2.另一種情況就是unpadded reference,也即reference是正常的參考基因組(可參考https://blog.csdn.net/xubo245/article/details/51283022)荚斯,一般情況下埠居,以這一種為主。

“=”表示 match事期;

“X”表示 mismatch(錯(cuò)配滥壕,位置是一一對(duì)應(yīng)的);

7.RNEXT:mate序列匹配上的染色體號(hào)(比如兽泣,Read2對(duì)應(yīng)的染色體號(hào))绎橘,如果第三列和這列都是“*”則說(shuō)明此Read沒(méi)有匹配到任何一個(gè)染色體,如果第三列有信息,這列是“”或者“=”則代表此Read匹配到第三列對(duì)應(yīng)的染色體上称鳞。

8.PNEXT:該列表示與該reads對(duì)應(yīng)的mate pair reads的比對(duì)位置涮较,如果這對(duì)pair-end reads比對(duì)到同一條reference序列上,在sam文件中reads的id出現(xiàn)2次冈止,Read1比對(duì)的第4列等于Read2比對(duì)的第8列狂票。同樣Read1比對(duì)的第8列等于Read2比對(duì)的第4列。例如:

第1列(Read id)····第4列(Read1比對(duì)位置)····第8列(mate-pair reads比對(duì)位置)

22699:1759····124057649····124057667

22699:1759····124057667····124057649

相同的reads id一個(gè)來(lái)自Read1文件熙暴,一個(gè)來(lái)自Read2文件闺属,第4列和第8列是對(duì)應(yīng)的

9.TLEN:signed observed Template LENgth (可以理解為文庫(kù)插入片段長(zhǎng)度)

如果R1端的read和R2端的read能夠mapping到同一條Reference序列上(即第三列RNAME相同),則該列的值表示第8列減去第4列加上第6列的值周霉,R1端和R2端相同id的reads其第九列值相同掂器,但該值為一正一負(fù),R1文件的reads和R2文件的reads俱箱,相同id的reads要相對(duì)來(lái)看国瓮。在進(jìn)行該第列值的計(jì)算時(shí),如果取第6列的數(shù)值狞谱,一定要取出現(xiàn)M的值乃摹,S或H的值不能取。

(8.9解釋來(lái)自:作者:genome_denovo芋簿,來(lái)源:CSDN峡懈,原文:https://blog.csdn.net/genome_denovo/article/details/78712972,感謝作者与斤,如有侵權(quán)請(qǐng)聯(lián)系本人刪除)

10.序列信息肪康,

11.Read質(zhì)量信息(ASCII編碼)

12.可選區(qū)域

舉幾個(gè)例子:NM,MD

NM可以簡(jiǎn)單的理解為:如果要把READ變?yōu)楦鷕eference一致需要幾步(一般步驟有三種類(lèi)型,堿基替換,刪除堿基最岗,添加堿基)

MD:簡(jiǎn)單的理解為匹配結(jié)果(跟第10列結(jié)合可以看出reference的原序列)静袖,下面舉個(gè)例子:

從上面的圖可以看出來(lái)這里的NM值為2,MD為3^A42T5,由MD可以知道這個(gè)read比對(duì)結(jié)果中前3個(gè)匹配上了,之后需要在read中插入一個(gè)A(也就是read相比ref少了一個(gè)A),再之后42個(gè)堿基是匹配上了善榛,到然后這42個(gè)之后的堿基在參考基因組上應(yīng)該是T,后面5個(gè)是匹配上了呻畸。這樣的話(huà)我們根據(jù)read的序列就能推斷出ref的序列為:CCGATAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCC移盆。

我們檢查一下推測(cè)的是否正確,來(lái)看hg19中這段序列:


hg19中的序列信息

可以發(fā)現(xiàn)除了開(kāi)頭四個(gè)堿基在hg19中是N以外伤为,其他的是匹配一致的(好像是因?yàn)橛袑?xiě)序列是在端粒中的咒循,所以呈現(xiàn)的序列信息就是N,也有些是因?yàn)檫€沒(méi)有測(cè)出來(lái),所以用N代替叙甸。)颖医、

這樣再來(lái)看的話(huà),就可以知道read相比ref有兩處不同裆蒸,一個(gè)是缺了個(gè)A熔萧,一個(gè)是堿基錯(cuò)配(T-A),所以如果read要和ref一致的話(huà)需要編輯兩次僚祷,一次是添加一個(gè)A哪痰,一次是把A變成T。

如果覺(jué)得有用久妆,就幫我點(diǎn)個(gè)贊吧^_^!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市跷睦,隨后出現(xiàn)的幾起案子筷弦,更是在濱河造成了極大的恐慌,老刑警劉巖抑诸,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件烂琴,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蜕乡,警方通過(guò)查閱死者的電腦和手機(jī)奸绷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)层玲,“玉大人号醉,你說(shuō)我怎么就攤上這事⌒量椋” “怎么了畔派?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)润绵。 經(jīng)常有香客問(wèn)我线椰,道長(zhǎng),這世上最難降的妖魔是什么尘盼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任憨愉,我火速辦了婚禮,結(jié)果婚禮上卿捎,老公的妹妹穿的比我還像新娘配紫。我一直安慰自己,他們只是感情好娇澎,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布笨蚁。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪括细。 梳的紋絲不亂的頭發(fā)上伪很,一...
    開(kāi)封第一講書(shū)人閱讀 51,624評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音奋单,去河邊找鬼锉试。 笑死,一個(gè)胖子當(dāng)著我的面吹牛览濒,可吹牛的內(nèi)容都是我干的呆盖。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼贷笛,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼应又!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起乏苦,我...
    開(kāi)封第一講書(shū)人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤株扛,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后汇荐,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體洞就,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年掀淘,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了旬蟋。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡革娄,死狀恐怖倾贰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拦惋,我是刑警寧澤躁染,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站架忌,受9級(jí)特大地震影響吞彤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叹放,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一饰恕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧井仰,春花似錦埋嵌、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)范舀。三九已至,卻和暖如春了罪,著一層夾襖步出監(jiān)牢的瞬間锭环,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工泊藕, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留辅辩,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓娃圆,卻偏偏與公主長(zhǎng)得像玫锋,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子讼呢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容