最近需要將bam文件映射到bed上并統(tǒng)計,一番嘗試操作之后發(fā)現(xiàn):
貌似samtools bedcov 和 bedtools coverage都能用,但兩者有啥異同點呢?下邊就給大家扒一扒
相同點:bedtools bedcov 和 bedtools coverage兩個工具都可以對一個BAM的特定基因區(qū)域的覆蓋深度進行統(tǒng)計
使用的命令行如下:
bedtools coverage -a gene.bed -b sample.bam -d -counts
samtools bedcov gene.bed sample.bam
bedtools得到的結(jié)果如下:
chr1 6991 7008 "OR4F5" 61 #from bedtools coverage
samtools得到的結(jié)果如下:
chr1 6991 7008 "OR4F5" 4714 #from samtools bedcov
可以看出bedtools給出的覆蓋深度是61,samtools給出的覆蓋深度是4714,兩個之間的差距還是很大的,這其中的原因是什么?
區(qū)別:
其實上邊問題的原因很簡單,
bedtools coverage給出的統(tǒng)計量是目標區(qū)域的平均深度。
samtools bedcov給出的統(tǒng)計量是指bed區(qū)域內(nèi)每個堿基深度的加和。如果想要得到實際的平均深度,需要除以bed區(qū)域的長度。
最后值得注意的是,samtools bedcov 會忽略標記為duplicates, QC fail等的reads,但bedtools coverage不會。
---------------------------------------------------------------------------------------------------------------------------------------------------I`m a line ! Thanks !-------------------------------------------------------------------------------------------------------------------------------------------------------------------------