bam比对flag说明以及提取未必对上的reads

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bam比对flag说明以及提取未必对上的reads相关的知识,希望对你有一定的参考价值。

参考技术A flag

1 : 代表这个序列采用的是PE双端测序

2: 代表这个序列和参考序列完全匹配,没有插入缺失

4: 代表这个序列没有mapping到参考序列上

8: 代表这个序列的另一端序列没有比对到参考序列上,比如这条序列是R1,它对应的R2端序列没有比对到参考序列上

16:代表这个序列比对到参考序列的负链上

32 :代表这个序列对应的另一端序列比对到参考序列的负链上

64 : 代表这个序列是R1端序列, read1;

128 : 代表这个序列是R2端序列,read2;

256: 代表这个序列不是主要的比对,一条序列可能比对到参考序列的多个位置,只有一个是首要的比对位置,其他都是次要的

512: 代表这个序列在QC时失败了,被过滤不掉了(# 这个标签不常用)

1024: 代表这个序列是PCR重复序列(#这个标签不常用)

2048: 代表这个序列是补充的比对(#这个标签具体什么意思,没搞清楚,但是不常用)

1.查看

其中bam文件中用标签4代表read未比对上;所以查看未比对上的reads用

samtools view -f 4 *bam|less -S

2.提取

提取未比对到参考序列的结果:

samtools view -b -h -f 4 *.bam > unmapped.bam

-h 文件包含header line;-f,提取;-b,输出为bam格式

###-F参数是过滤的意思(filter);这里类似grep -v

所以提取比对到参考序列的结果:

samtools view -b -h -F 4 *.bam > mapped.bam

F意思为过滤掉以4为标签的序列

提取双端序列都比对到参考序列(4+8)的结果

samtools view -bF 12 *.bam > mapped.bam

3.bam2fastq

bamToFastq -bam file_unmapped.bam -fq1 unmappedR1.fastq -fq2 unmappedR2.fastq

参考文献:http://blog.sina.com.cn/s/blog_9fe4fc830102x7s6.html

https://www.cnblogs.com/leezx/p/8655086.html

链接:https://www.jianshu.com/p/7dd5d3e61d09

序列比对及BAM、SAM文件

参考技术A 序列比对后的文件存在SAM文件中,序列比对软件有bwa等。

一般我们现在不保存SAM文件,而是直接在bwa比对完之后用samtools生成BAM文件

什么叫BAM文件呢,他其实就是SAM文件的二进制文件(Binary SAM),大小只有SAM文件的大约25%,但是不像SAM文件是txt file,BAM文件是无法用txt方式打开的。也就说BAM就是序列比对后的文件用于之后的分析。

.bai = BAM index

以上是关于bam比对flag说明以及提取未必对上的reads的主要内容,如果未能解决你的问题,请参考以下文章

2021-04-22 bam文件中提取比对(mapped)或未比对上(unmapped)reads

SAM/BAM文件解读

bam文件格式说明

如何高效地从BAM文件中提取fastq

提取bam/sam文件指定区域reads

sam/bam格式