SAM格式,是一种用于存储测序序列比对结果的通用格式,以TAB为分割符。SAM格式的设计理念是:灵活存储所有比对信息。SAM一般为11列以上,其中前11列为已定义列,12列及以后为可选列,算附加信息。
由于测序分两种:单端测序(Single-read)和双端测序(Paired-end和Mate-pair)。下文SAM格式中read表示Single-read或Paired-end Read1序列,mate表示Paired-end Read2序列。
- 第一列:read name,read的名字通常包括测序平台等信息;
- 第二列:sum of flags,比对flag数字之和,比对flag用数字表示,分别为:
- 0 read是Single-read且正向比对
- 1 read是pair中的一条(read表示本条read,mate表示pair中的另一条read)
- 2 pair一正一负完美的比对上
- 4 这条read没有比对上
- 8 mate没有比对上
- 16 这条read反向比对
- 32 mate反向比对
- 64 这条read是read1
- 128 这条read是read2
- 256 第二次比对
- 512 比对质量不合格
- 1024 read是PCR或光学副本产生
- 2048 辅助比对结果
通过这个和可以直接推断出匹配的情况。假如说标记不是以上列举出的数字,比如说83=(64+16+2+1),就是这几种情况值和。
- 第三列:RNAM,reference sequence name,实际上就是比对到参考序列上的染色体号。若是无法比对,则是*;
- 第四列:position,read比对到参考序列上,第一个碱基所在的位置。若是无法比对,则是0;
- 第五列:Mapping quality,比对的质量分数,越高说明该read比对到参考基因组上的位置越唯一;
- 第六列:CIGAR值,read比对的具体情况,
- “M”表示 match或 mismatch;
- “I”表示 insert;
- “D”表示 deletion;
- “N”表示 skipped(跳过这段区域);
- “S”表示 soft clipping(被剪切的序列存在于序列中);
- “H”表示 hard clipping(被剪切的序列不存在于序列中);
- “P”表示 padding;
- “=”表示 match;
- “X”表示 mismatch(错配,位置是一一对应的);
- 第七列:MRNM(chr),mate的reference sequence name,实际上就是mate比对到的染色体号,若是没有mate,则是*;
- 第八列:mate position,mate比对到参考序列上的第一个碱基位置,若无mate,则为0;
- 第九列:ISIZE,Inferred fragment size.详见Illumina中paired end sequencing 和 mate pair sequencing,是负数,推测应该是两条read之间的间隔(待查证),若无mate则为0;
- 第十列:Sequence,就是read的碱基序列,如果是比对到互补链上则是reverse completed eg. CGTTTCTGTGGGTGATGGGCCTGAGGGGCGTTCTCN
- 第十一列:ASCII,read质量的ASCII编码。
- 第十二列之后:Optional fields,可选的自定义区域
- AS:i 匹配的得分
- XS:i 第二好的匹配的得分
- YS:i mate 序列匹配的得分
- XN:i 在参考序列上模糊碱基的个数
- XM:i 错配的个数
- XO:i gap open的个数
- XG:i gap 延伸的个数
- NM:i 经过编辑的序列
- YF:i 说明为什么这个序列被过滤的字符串
- MD:Z 代表序列和参考序列错配的字符串(例如MD:Z:45A2C3 失配碱基的位点,45,45+2两个位点失配)
- XT:A:U read只有一个完整比对,U unique
- XT:A:R read有一个以上位置完整比对,R repeat
- NM:i:2 read有2个碱基mismatch
- X0:i:2 read有2个位置完整比对(与XT:A有对应关系)
- X1:i:2 read有2个位置以1个碱基失配比对
- XA:Z:Chr3,+1530, 50M,0;Chr4,-7568,50M,1 有0/1个碱基失配的详细比对情况(与XT:A、X0:i、X1:i有对应关系)
以上参考
小猪打呼噜SAM格式详解
EmanLee bam/sam格式说明
SAM格式(wiki)
SAM格式(wikipedia)
SAM格式
网友评论