SAM分为两部分,注释信息(header section)和比对结果部分(alignment section)。
注释信息可有可无,都是以@开头,用不同的tag表示不同的信息,主要有:
@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内容是可以自己在运行程序是加入的
比对结果部分(alignment section),每一行表示一个片段(segment)的比对信息,包括11个必须的字段(mandatory fields)和一个可选的字段,字段之间用tag分割。必须的字段有11个,顺序固定,不可用时,根据字段定义,可以为’0‘或者’*‘,这是11个字段包括:
第一列: QNAME:测序出来的reads序列数据名 如:SRR3101251.1
第二列:FLAG:0正链,16负链,4没比对上:
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
第三列:RNAME:参考基因组的染色体名,如:chr19
第四列:POS:比对到这个染色的具体位置(从1'端开始)如9486878
第五列:MAPQ:比对质量,是一个衡量比对好坏的打分结果,越高越好
#### hisat2 ####
60 - uniquely mapped read, regardless of number of mismatches / indels
1 - multiply mapped, perfect match or few mismatches / indels
0 - unmapped, or multiply mapped and with lots of mismatches / indels
第六列:CIGAR:简要比对信息表达式(Compact Idiosyncratic Gapped Alignment Report):如M:完全比配;D:缺失。以参考序列为基础,使用数字加字母表示比对结果,比如3S6M1P1I4M,前三个碱基被剪切去除了,然后6个比对上了,然后打开了一个缺口,有一个碱基插入,最后是4个比对上了,是按照顺序的;
第七列:RNEXT:下一个片段比对上的参考序列的编号,没有另外的片段,这里是’*‘,同一个片段,用’=‘;第八列:PNEXT: 配对片段(即mate)比对上的参考序列的编号,没有另外的片段,这里是'*',同一个片段,用'=';第九列:TLEN:配对片段(即mate)比对到参考序列上的第一个碱基位置,若无mate,则为0;第十列:SEQ:Template(文库插入序列)的长度,最左边得为正,最右边的为负,中间的不用定义正负,不分区段(single-segment)的比对上,或者不可用时,此处为0;
第十一列:QUAL:ASCII编码的序列reads质量。ASCII码偏移33。序列的质量信息,格式同FASTQ一样。
第十二列:可选字段(optional fields),格式如:TAG:TYPE:VALUE,其中TAG有两个大写字母组成,每个TAG代表一类信息,每一行一个TAG只能出现一次,TYPE表示TAG对应值的类型,可以是字符串、整数、字节、数组等。
粗略介绍:
1:QNAME 比对的序列名称 例如:M04650:84:000000000-B837R:1:1101:22699:1759(一条测序reads的名称)
2:FLAG Bwise FLAG(表明比对类型:paring,strand,mate strand等) 例如:99
3:RENAME 比对上的参考序列名 例如:NC_000075.6
4:POS 1-Based的比对上的最左边的定位 例如:124057649
5:MAPQ 比对质量 例如:60
6:CIGAR Extended CIGAR string(操作符:MIDNSHP)比对结果信息;匹配碱基数,可变剪接等 例如:87M
7:MRNM 相匹配的另外一条序列,比对上的参考序列名 例如:=
8:MPOS 1-Based leftmost Mate Position (相比于MRNM列来讲意思和POS差不多) 例如:124057667
9:ISIZE 插入片段长度 例如:200
10:SEQ 和参考序列在同一个链上比对的序列(若比对结果在负义链上,则序列是其反向重复序列,反向互补序列) 例如:ATTACTTGGCTGCT
11:QUAL 比对序列的质量(ASCII-33=Phred base quality)reads碱基质量值 例如:-8CCCGFCCCF7@E- :12:可选的列 以TAG:TYPE:VALUE的形式提供额外的信息
详细:
ref: SAM格式详解- CSDN博客