今天在Biostar上看到了这个关于
samtools bedcovvs.bedtools coverage问题的讨论(https://www.biostars.org/p/195497/),感觉值得分享。
问题
po主用bedtools和samtools两个工具对一个BAM的特定基因区域的覆盖深度进行统计,却得到了不同的结果,特来论坛求助。
他使用的命令行如下:
bedtools coverage -a exons.bed -b bam -d -counts
samtools bedcov gene.bed sample.bam
bedtools得到的结果如下:
chr1 69091 70008 "OR4F5" 61 #from bedtools coverage
samtools得到的结果如下:
chr1 69091 70008 "OR4F5" 4714 #from samtools bedcov
可以看出bedtools给出的覆盖深度是61,samtools给出的覆盖深度是4714,两个之间的差距还是很大的,这其中的原因是什么?
解惑
其实原因很简单,bedtools coverage给出的统计量是目标区域的平均深度。而samtools bedcov给出的统计量是指bed区域内每个碱基深度的加和,如果想要得到实际的平均深度,需要除以bed区域的长度。
最后值得注意的是,samtools bedcov 会忽略标记为duplicates, QC fail等的reads,但bedtools coverage不会.