sam格式的结构和意义_SAMtools: SAM格式的处理利器

SAM(Sequence Alignment/Map)是存储比对数据的标准格式,广泛应用于重测序、转录组和表观组学分析。本文详细介绍了SAM文件的结构,包括header、比对信息和可选信息,以及如何使用SAMtools等工具进行处理和转换。重点讨论了FLAG字段的含义,例如PAIRED、PROPER_PAIR、REVERSE等,以及CIGAR字符串在表示序列比对中的作用。
摘要由CSDN通过智能技术生成

SAM及其相关工具

SAM格式介绍

SAM全称是Sequence Alignment/Map, 是目前最常用的存放比对或联配数据的格式。无论是重测序,还是转录组,还是表观组,几乎所有流程都会产生SAM/BAM文件作为中间步骤,然后是后续专门的分析过程。

以一个简单的例子介绍.第一幅图表示read和参考基因组比对可能出现的情况。r001/2表示paired end数据。r003是嵌合read,r004则是原序列打断后比对结果。

原始数据

经过专门的比对软件,如BWA,BOWTIE2等,得到的SAM文件如下所示,需要研究的就是如下这几行。

比对后存放形式

术语和概念

在学习SAM格式之前,请确认自己是否对如下概念有清楚的认识|

read: 测序仪返回的原始序列.一个read可以包括多个segment。read之间的先后顺序表示被测序仪读到的时间前后关系.

segment: 一段连续的序列或子序列

linear alignment: 线性联配表示一个read比对到单个参考序列,可以存在插入,缺失,跳过(skip),剪切(clip), 但是不存在方向改变的情况(比如说一部分和正向链联配,另一个位置则是和负向链联配)。最简单的判断的方式就是,一个linear alignment只用一行记录。

chimeric alignment: 嵌合联配需要多行记录。比如说r003第一个记录是后6个匹配,第二个记录则是反向序列的后5个匹配。第一个被称之为"representative",其他都是"supplementary"

read alignment: 无论是linear alignment, 还是chimeric alignment, 只要能完整表示一个read,都成为是read alignment

multiple mapping: 由于存在重复区,一个read 可能比对到参考基因组的不同区域。其中一个被认为是primary,其他都是secondary.

两个系统|1-based coordinate system(SAM,VCF,GFF,wiggle)和0-based coordinate system(BAM, BCFv2, BED, PSL).自行用R和Python感受一下两者的不同。

chimeric alignment 可能是结构变异,基因融合,参考序列误组装,RNA-Seq,实验protocol等因素造成。对于chimeric alignment的里面每一个linear alignment而言,由于相互之前不存在重叠,故而联配质量较高,适合用于SNP/INDEL calling.相反, multiple mapping则是因为重复造成(read越长出现的概率越低), 相互之间存在重叠,仅有其中一条有最优的匹配,其他联配质量过低会被SNP/INDEL caller忽略。

第一部分| SAM Header(非强制)

这个部分能够被/^@[A-Z][A-Z](t[A-Za-z][A-Za-z0-9]:[ -~]+)+$/或/^@COt.*/这两个表达式进行匹配。比如说你随便有一个BAM文件(包含header),就能被这个表达式进行匹配。

samtools view -h S43S1-M_H3K5FDMXX_L1_sort.bam

| awk '$0 ~ /^@[A-Z][A-Z](t[A-Za-z][A-Za-z0-9]:[ -~]+)+$/ { print $0}'

header

其中第一行@HD,表示参考基因组的排序情况. 然后@SQ则是参考基因组的每一条序列的具体信息,命名和长度。@PG记录运行的命令,以便你检查代码。对于GATK还需要提供@RG

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值