基因组变异检测的工作流程
流程
通常得到的测序数据为fastq格式文件。使用BWA将测序数据fastq文件映射(Mapping)到参考基因组fasta文件,得到比对信息数据sam文件,使用SAMtools view: 将sam转化为bam,sort: reads按映射位置排序,index: 对bam文件建立索引。例如,从SRA数据库中下载了一些sra文件。
1 | # sra -> fastq |
在进行结构变异检测之前,可能还需要几个改善比对质量的步骤。
- 标记扩增测序副本
在制备测序文库的过程中,PCR扩增会带来一些测序偏差,所以要尽量去除PCR扩增形成的测序副本(duplicates),使用Picard工具的MarkDuplicates可以去除或标记副本片段。 - indel区域重比对
由于测序样本中indel的存在,比对时indel附近会出现大量的碱基错配。局部重比对就是将indel区域重新比对,使附近的错误率降到最低。首先使用GATK[47]中的RealignerTargetCreator根据已知indel来生成重比对的区域,然后使用GATK中的IndelRealigner对目标区域进行重比对。 - 碱基质量重校准
将比对信息文件里的碱基质量值重新校准,使得能够更加接近参考序列与真实序列之间错配的概率。使用GATK中的BaseRecalibrator工具进行根据一些已知的区域,生成一个质量校准所需的数据文件,利用GATK中的PrintReads工具将经过质量校准的数据输出。
最后,使用各种工具进行变异检测。理论上,得到BAM文件之后就可以用于检测变异了。许多时候,真实数据可以直接下载已经Mapping好的BAM文件。
附录
SAMtools项目组也给出了一个Workflows,建议阅读:http://www.htslib.org/workflow/
上述还提到了两个工具Picard,Genome Analysis Toolkit
GATK也提供了一个Workflows,也建议阅读:https://software.broadinstitute.org/gatk/best-practices/