Bam: 文件格式

作者: LET149 | 来源:发表于2023-03-27 08:57 被阅读0次

https://zhuanlan.zhihu.com/p/31405418?from_voters_page=true

Sam : The Sequencing Alignment/Map Format
Bam :
BamSam的压缩格式,二者保存的信息内容完全相同

Bam文件由headerrecord两部分构成

1. header

header : 处在整个文件的开头,每一行都以@开头
@HD : 必须的标准头信息
@SQ : 参考文件染色体信息,顺序必须与参考文件中的保持一致
@RG : Read Group,包含测序平台、测序文库、样本ID等信息
@PG : 用过的操作过程和参数信息,从这个bam文件产生的那个命令开始记录
Note : 在一些测序结果生成的bam文件中,header还包含其他的内容

header

2. record

record : 比对结果信息,每一行都是一条read,基本格式如下:

record
每一行都会包含>=11列的内容,列与列之间用制表符分隔,同一文件中所有行的列数一致
每一行的前11列内容是必须内容,每行代表的含义是固定的
从第12行开始,是测序数据的metadata,具体内容要根据测序数据本身而定,不是固定不变的

每列所具有的含义如下:


图片.png

第一列

QNAME : Query Name ,序列名称,与fastq中序列的名称完全保持一致

bam中的序列名
fastq中的序列名

第二列

FLAG : flags,比对信息位,呈现为一个十进制的整数,这个数大多数时候为多个十进制整数的和
其中每个十进制的数都可以转换为一个二进制的数,这里用到的二进制的数一共有12位,其中的每个数位都分别代表一种信息,当此数位为1时,则代表对于某条序列来说,此信息为TRUE,是0则代表此信息为FALSE

示例: FLAG = 69
69 = 64+4+1
64 = 000001000000 : 第六位代表的信息为TRUE,含义为该序列为双端测序结果的read1
4 = 000000000100 : 第十位代表的信息为TRUE,含义为序列没有比对到参考序列
1 = 000000000001 : 第十二位代表的信息为TRUE,含义为该序列为双端测序结果中的一条
与此同时,其他为0的位置代表的信息则为FALSE

FLAG

第三列 + 第四列

RNAME + POS,由染色体名称在染色体上的位置共同给出此序列的位置信息
RNAME : Reference Name,第三列,染色体名称
POS : Position,第四列,比对上的序列第一个碱基在某染色体上位置,染色体上的第一个碱基的位置为1

position
比对上的序列第一个碱基在NC_037638.1这条染色体位置是2005

第五列

MAPQ : Mapping Quality,比对质量值
MAPQ = -log10(错误比对到此位置上的概率)*10

示例: MAPQ = 40
错误比对到此位置上的概率 = 0.0001
一般来讲,MAPQ>=30即为可以相信的比对结果

第六列

CIGAR : Compact Idiosyncratic Gapped Alignment Report,称为雪茄字符串,用数字和字母来表示序列比对到参考序列上的细节情况

CIGAR
示例: 10S136M4S
表示:前十个后四个碱基没有比对到序列上,中间的136个碱基比对到序列上

Note : M 表示完全匹配或者包含单碱基的错配

第七列 + 第八列 + 第九列

Mate Information,仅对双端序列有意义,表示的内容为双端测序中与此序列配对的序列的比对情况;在某些情况下,即使是双端测序数据,此信息可能也不会包含(信息位置仍在)
RNEXT : 第七位,配对read比对到参考文件中的染色体号
PNEXT : 第八位,配对read比对到染色体上的第一个碱基的位置
TLEN : 第九位,配对read插入片段长度

第十列

SEQ : Read Sequence,当前read序列信息

第十一列

QUAL : Quality Scores,当前read测序质量值

十二列及以后

Metadata,序列元信息
具体内容根据测序文件的内容而定

比如:单细胞测序结果中包含Cell Barcode等信息

Cell Barcode

相关文章

网友评论

    本文标题:Bam: 文件格式

    本文链接:https://www.haomeiwen.com/subject/rnqkcrtx.html