【问题标题】:Running GATK DepthOfCoverage on BAM files with multiple RG's在具有多个 RG 的 BAM 文件上运行 GATK DepthOfCoverage
【发布时间】:2014-07-31 18:09:54
【问题描述】:

我正在尝试对一些 BAM 文件运行 GATK DepthOfCoverage,这些文件是我从两个原始文件合并而来的(相同的样本在两条通道上测序以最大限度地增加读取次数)。我意识到我的合并文件具有不同读取组的读取(如每个读取的 RG 字段所反映),并且我的两个原始文件的标题在它们的 @RG 字段中有所不同。

我尝试运行 samtools reheader 在标题中添加一个新的@RG 字段,但是当我合并两个文件时,每个读取组都基于两个 BAM 文件的名称,而不是 @RG 中的名称两个 BAM 文件的标头

例如,我的两个起始样本是:

27163.pe.markdup.bam
27091.pe.markdup.bam

但是当我使用 samtools 合并它们时

samtools merge merged.bam 27163.pe.markdup.bam 27091.pe.markdup.bam 

生成的 merge.bam 在标头中具有相同的 @RG 字段,只有两者之一,并且每个读取都有一个基于它来自的文件名称的读取名称:

阅读 1

RG:Z:27091.pe.markdup

阅读 2

RG:Z:27163.pe.markdup

等等。对于 BAM 中的其余读取

我做错了吗?在合并之前我应该​​重新检查每个原始文件吗?或者只是在合并到与 GATK 兼容的东西后重新开始?似乎无论合并前标头中的 @RG 字段是什么,合并后的文件将始终根据两个输入文件的名称具有不同 RG 的读取。

我也不确定 GATK DepthOfCoverage 想要作为读取组的输入。它是否需要一个 RG 用于所有读取?在那种情况下,我应该使用与 samtools merge 不同的东西吗?

提前感谢您能给我的任何帮助。

【问题讨论】:

    标签: java samtools


    【解决方案1】:

    为了将来参考,请在此处查看已制定的解决方案:

    https://www.biostars.org/p/105787/#107970

    基本上正确的程序是使用 Picard 而不是 samtools 进行合并,这在 bam 文件读取组词汇方面提供与 GATK 兼容的输出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-27
      • 2014-06-10
      • 2016-01-25
      • 1970-01-01
      • 2020-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多