SAM文件解读

SAM文件由两部分组成,头部区和主体区,都以tab分列。
头部区:以’@'开始,体现了比对的一些总体信息。比如比对的SAM格式版本,比对的参考序列,比对使用的软件等。
主体区:比对结果,每一个比对结果是一行,有11个主列和一个可选列。

如下图:

头部区简要介绍

@HD VN:1.0 SO:unsorted (排序类型)

头部区第一行:VN是格式版本;SO表示比对排序的类型,有unknown(default),unsorted,queryname和coordinate几种。samtools软件在进行行排序后不能自动更新bam文件的SO值,而picard却可以。

@SQ SN:contig1 LN:9401 (序列ID及长度)

参考序列名,这些参考序列决定了比对结果sort的顺序,SN是参考序列名;LN是参考序列长度;每个参考序列为一行。

例如:@SQ SN:NC_000067.6 LN:195471971

@RG ID:sample01 (样品基本信息)

Read Group。1个sample的测序结果为1个Read Group;该sample可以有多个library的测序结果,可以利用bwa mem -R 加上去这些信息。

例如:@RG ID:ZX1_ID SM:ZX1 LB:PE400 PU:Illumina PL:Miseq

ID:样品的ID号 SM:样品名 LB:文库名 PU:测序仪 PL:测序平台

这些信息可以在形成sam文件时加入,ID是必须要有的后面是否添加看分析要求

@PG ID:bowtie2 PN:bowtie2 VN:2.0.0-beta7 (比对所使用的软件及版本)

例如:@PG ID:bwa PN:bwa VN:0.7.12-r1039 CL:bwa sampe -a 400 -f ZX1.sam -r @RG ID:ZX1_ID SM:ZX1 LB:PE400 PU:Illumina PL:Miseq …/0_Reference/Reference_Sequence.fa ZX_HQ_clean_R1.fq.sai ZX_HQ_clean_R2.fq.sai …/2_HQData/ZX_HQ_clean_R1.fq …/2_HQData/ZX_HQ_clean_R2.fq

这里的ID是bwa,PN是bwa,VN是0.7.12-r1039版本。CL可以认为是运行程序@RG是上面RG表示的内容,后面是程序内容,这里的@GR内容是可以自己在运行程序是加入的。

主体部分介绍
主体部分有11个主列和1个可选列
1)QNAME 比对的序列名称 例如:M04650:84:000000000-B837R:1:1101:22699:1759(一条测序reads的名称)
2)FLAG 值:1(1)该read是成对的paired reads中的一个
      2(10)paired reads中每个都正确比对到参考序列上
      4(100)该read没比对到参考序列上
      8(1000)与该read成对的matepair read没有比对到参考序列上
     16(10000)该read其反向互补序列能够比对到参考序列
     32(100000)与该read成对的matepair read其反向互补序列能够比对到参考序列
     64(1000000)在paired reads中,该read是与参考序列比对的第一条
     128(10000000)在paired reads中,该read是与参考序列比对的第二条
     256(100000000)该read是次优的比对结果
     512(1000000000)该read没有通过质量控制
     1024(10000000000)由于PCR或测序错误产生的重复reads
     2048(100000000000)补充匹配的read
3)RENAME 比对上的参考序列名,表示read比对的那条序列的序列名称(名称与头部的@SQ相对应),如果这列是“*”,可以认为这条read没有比对上的序列,则这一行的第四,五,八,九 列是“0”,第六,七列与该列是相同的表示方法。

4)POS 1-Based的比对上的最左边的定位,表示read比对到RNAME这条序列的最左边的位置,如果该read能够完全比对到这条序列(CIGAR string为M)则这个位置是read的第一个碱基比对的位置,如果该read的反向互补序列比对到这条序列,则这个位置是read的反向互补序列的第一个碱基比对的位置,所以无论该read是正向比对到该序列,或是其反向互补序列比对到该序列,比对结果均是最左端的比对位置
5)MAPQ 比对质量,表示为mapping的质量值,mapping Quality, It equals -10log10Pr{mapping position is wrong}, rounded to the nearest integer, A value 255 indicates that the mapping quality is not available. 该值的计算方法是mapping的错误率的-10log10值,之后四舍五入得到的整数,如果值为255表示mapping值是不可用的,如果是unmapped read则MAPQ为0,一般在使用bwa mem或bwa aln(bwa 0.7.12-r1039版本)生成的sam文件,第五列为60表示mapping率最高,一般结果是这一列的数值是从0到60,且0和60这两个数字出现次数最多。

6)CIGAR Extended CIGAR string(操作符:MIDNSHP)比对结果信息,CIGAR string,可以理解为reads mapping到第三列序列的mapping状态,(如37M1D2M1I,这段字符的意思是37个匹配,1个参考序列上的删除,2个匹配,1个参考序列上的插入)
    对于mapping状态可分为以下几类:

    M:alignment match (can be a sequence match or mismatch)表示read可mapping到第三列的序列上,则read的碱基序列与第三列的序列碱基相同,表示正常的mapping结果,M表示完全匹配,但是无论reads与序列的正确匹配或是错误匹配该位置都显示为M
    I:insertion to the reference表示read的碱基序列相对于第三列的RNAME序列,有碱基的插入
    D:deletion from the reference表示read的碱基序列相对于第三列的RNAME序列,有碱基的删除
    N:skipped region from the reference表示可变剪接位置,如果是mRNA-to-genome,N出现的位置代表内含子,其它比对形式出现N时则没有具体解释。
    P:padding (silent deletion from padded reference)
    S:soft clipping (clipped sequences present in SEQ)
    H:hard clipping (clipped sequences NOT present in SEQ),clipped均表示一条read的序列被分开,之所以被分开,是因为read的一部分序列能匹配到第三列的RNAME序列上,而被分开的那部分不能匹配到RNAME序列上。
   "="表示正确匹配到序列上
   "X"表示错误匹配到序列上
而H只出现在一条read的前端或末端,但不会出现在中间,S一般会和H成对出现,当有H出现时,一定会有一个与之对应的S出现

例如:
162M89S
162H89M
149M102S
149H102M
40S211M
20M1D20M211H
S可以单独出现,而H必须有与之对应的S出现时才可能出现,不可在相同第一列的情况下单独出现
M/I/S/=/X:这些数值的加和等于第10列SEQ的长度

7)MRNM 表示下一个片段比对上的参考序列的编号,比对不上用’*‘,该片段和下一个片段比对上同一个参考片段,用’=‘。
8)MPOS 1-Based leftmost Mate Position (相比于MRNM列来讲意思和POS差不多)该列表示与该reads对应的mate pair reads的比对位置,如果这对pair-end reads比对到同一条reference序列上,在sam文件中reads的id出现2次,Read1比对的第4列等于Read2比对的第8列。同样Read1比对的第8列等于Read2比对的第4列。例如:

9)ISIZE 文库插入片段长度(序列模板长度), 如果R1端的read和R2端的read能够mapping到同一条Reference序列上(即第三列RNAME相同),则该列的值表示第8列减去第4列加上第6列的值,R1端和R2端相同id的reads其第九列值相同,但该值为一正一负,R1文件的reads和R2文件的reads,相同id的reads要相对来看。在进行该第列值的计算时,如果取第6列的数值,一定要取出现M的值,S或H的值不能取。

10)SEQ 表示序列片段的序列信息,(注意CIGAR中M/I/S/=/X对应数字的和要等于序列长度),表示read的碱基序列,如果是比对到互补链上则是反转互补序列。
11)QUAL(ASCII码格式的序列质量;序列的质量信息,格式同FASTQ一样)比对序列的质量(ASCII-33=Phred base quality)reads碱基质量值 例如:-8CCCGFCCCF7@E-
12)可选的列 以TAG:TYPE:VALUE的形式提供额外的信息。

AS:i 匹配的得分

XS:i 第二好的匹配的得分

YS:i mate序列匹配的得分

XN:i 在参考序列上模糊碱基的个数

XM:i 错配的个数

XO:i  gap open的个数

XG:i gap 延伸的个数

NM:i 经过编辑的序列

YF:i 说明为什么这个序列被过滤的字符串

YT:Z

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有对应关系)

  • 25
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SAM(Sequence Alignment/Map)文件是一种常用的生物信息学文件格式,用于存储测序数据的比对结果。SAM文件由一系列的比对记录组成,每条记录描述了一个测序序列的比对信息。 SAM文件中的每条记录由多个字段组成,包括序列名、比对标志、参考序列名、起始位置、比对质量等。下面是一条SAM记录的示例: ``` SRR001666.1 147 chr1 1000 60 50M = 2000 0 ATCGATCG... IIIIIII... ``` - 第一个字段是序列名,用于唯一标识每个测序序列。 - 第二个字段是比对标志,描述了该比对记录的一些属性,如是否为反向互补序列、是否有剪切等。 - 第三个字段是参考序列的名字,表示该测序序列比对到哪个参考序列上。 - 第四个字段是起始位置,表示该测序序列在参考序列上的起始位置。 - 第五个字段是比对质量,表示该比对的质量值。 - 第六个字段是CIGAR字符串,描述了比对的详细信息,如插入、删除等。 - 第七个字段是比对到的参考序列的名字,如果与第三个字段相同,则表示该测序序列与自身比对。 - 第八个字段是比对到的参考序列上的终止位置。 - 第九个字段是比对序列在参考序列上的偏移量。 - 第十个字段是比对的序列。 - 第十一个字段是比对序列的质量值。 通过解析SAM文件,我们可以获取比对的详细信息,如测序序列的起始位置、比对质量、CIGAR字符串等,以便进行后续的生物信息学分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值