展开

GATK3.0 WGS 分析

最后发布时间 : 2023-08-01 17:23:26 浏览量 :

学习资料

生信小木屋

局部重比与碱基质量矫正

接下来是局部区域重比对,通常也叫Indel局部区域重比对。有时在进行这一步骤之前还有一个merge的操作,将同个样本的所有比对结果合并成唯一一个大的BAM文件,merge的例子如下:

samtools merge <out.bam> <in1.bam> [<in2.bam> ... <inN.bam>]

【注意】之所以会有这种情况,是因为有些样本测得非常深,其测序结果需要经过多次测序(或者分布在多个不同的测序lane中)才全部获得,这个时候我们一般会先分别进行比对并去除重复序列后再使用samtools进行合并。

Indel局部重比对的前后的对比

Indel局部重比对的前后的对比

相信大家都可以明显地看到在序列重比对之前,在这个区域的比对数据是多么的糟糕,如果就这样进行变异检测,那么一定会得到很多假的结果。而在经过局部重比对之后,这个区域就变得非常清晰而分明,它原本发生的就只是一个比较长的序列删除(deletion)事件,但在原始的比对结果中却被错误地用碱基错配和短的Indel所代替。

说到这里,那么具体该怎么做呢?我们的WGS分析流程从这个步骤开始就需要用到GATK (GenomeAnalysisTK.jar)了,我们的执行命令如下:

java -jar /path/to/GenomeAnalysisTK.jar \
 -T RealignerTargetCreator \
 -R /path/to/human.fasta \
 -I sample_name.sorted.markdup.bam \
 -known /path/to/gatk/bundle/1000G_phase1.indels.b37.vcf \
 -known /path/to/gatk/bundle/Mills_and_1000G_gold_standard.indels.b37.vcf \
 -o sample_name.IndelRealigner.intervals

java -jar /path/to/GenomeAnalysisTK.jar \
 -T IndelRealigner \
 -R /path/to/human.fasta \
 -I sample_name.sorted.markdup.bam \
 -known /path/to/gatk/bundle/1000G_phase1.indels.b37.vcf \
 -known /path/to/gatk/bundle/Mills_and_1000G_gold_standard.indels.b37.vcf \
 -o sample_name.sorted.markdup.realign.bam \
 --targetIntervals sample_name.IndelRealigner.intervals

这里包含了两个步骤:

  • 第一步,RealignerTargetCreator ,目的是定位出所有需要进行序列重比对的目标区域(如下图);
  • 第二步,IndelRealigner,对所有在第一步中找到的目标区域运用算法进行序列重比对,最后得到捋顺了的新结果。

如果大家仔细看过WGS系列第四节的话,会发现我这里缺少了两个步骤:重比对和BQSR。没有执行BQSR是因为E.coli K12没有那些必须的known变异集(或者有但我没找到),所以无法进行;但没有重比对,则是因为我在GATK 4.0中没发现IndelRealigner这个功能,虽然我们使用GATK HaplotypeCaller或者Mutect2的话确实可以省略这个步骤,但如果是其他软件来进行变异检测那么该步骤依然十分重要,我目前不太清楚为何GATK 4.0没有将这个功能单独分离出来。