BBQ(生信基础问题28):如何使用samtools tview

2019-03-09  本文已影响50人  liu_ll

  在跑程序的时候,我们有一种感觉从原始的fq的文件,先比对成sam,然后再压缩成bam文件。然后再进行后续的步骤。接下来的话再对bam文件进行操作,sort建立index markduplication等等下游分析,那么问题来了,我们有没有办法对Bam文件可视化呢



  这里推荐samtools这个强大的工具。samtools里面有一个命令,samtools tview。他可以sort好的Bam文件并且可以进行可视化,提供随机访问的功能。

Q:如何去理解随机访问呢?
A: 比如说这个bam文件里面的顺序是chr1 ,chr2,chr3等等。一般读取顺序是从chr1访问开始到chr3,如果能直接访问chr2,chr3等信息的话,是不是可以节省读取时间呢?

Q:如何去实现随机访问呢?
A:这个时候就需要去利用 index ~
(小声说一下,建立index用什么呀? samtools sort 后利用 samtools index)

话不多说,赶紧来实现一下~

问题:给出的SAM文件,并使用samtools 进行排序,然后使用samtools 查看chr1:13417附近的位置,你会发现在附近有1条reads出现了1个G->A的mutation。那么通过这1条reads是否能说明这个点是否真的为1个mutation?

SAM测试文件的baidu盘下载地址
链接:https://pan.baidu.com/s/15gVVYPRu3VbF_uKbJUUGrA 密码:2drn

下载完了之在本地服务器上看看~

samtools view test.bam 

然后再进行如下操作:

对SAM文件转换成BAM文件
samtools view -hb ./test.sam > test.bam 

对BAM文件按mapping结果进行排序
samtools sort -O BAM -T test_sort.bam.temp -o test_sort.bam  test.bam

对BAM文件建立index
samtools index test_sort.bam test_sort.bam.bai 

接下来samtools tview看一下结果,附近有1条reads出现了1个G->A的mutation

G->A的mutation
通过这1条reads是否能说明这个点是否真的为1个mutation?

我认为是不能的,因为测序有可能有一定的错误,得看测到的这个点的所有reads的情况,如果都是A的话,可能是突变。此外,如果测序的乘数不深有可能在mapping的时候可能匹配到的位置会有错误。所以我认为通过一个reads的情况是不能过说明问题的。

上一篇下一篇

猜你喜欢

热点阅读