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

2022-01-11  本文已影响0人  maliming

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

作者:AsuraPrince

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

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

上一篇下一篇

猜你喜欢

热点阅读