software

GATK 实跑|gVCF 里的 0/0,有时四十条读段支持,有时一条也没有

作者:发布于 2026-11-14约 6 分钟阅读
同是 0/0,证据有多强。对一个合成杂合位点同时运行分块、逐碱基及最终分型。无覆盖,325 位,参考块 GT 0/0,最低深度与基因型质量均为 0。有覆盖,426 位,逐碱基有 40 条参考读段,所在块最低深度为 33。具体变异,450 位,G→A,参考与替代各有 20 条读段。

复核队列里的某个位点时,常有人从普通 VCF 找不到记录,接着问“这个人是不是参考纯合”。把同一个人的 gVCF 打开,有时能看见参考基因型,但也可能同时看到深度为零。我们给 GATK 一段确定有四十条读段的区域、一个人工杂合位点和一段完全没有读段的区域,让它分别输出逐碱基和分块的 gVCF,再运行基因分型。相同输入得到了四百零一行、四十行和一行。挑出其中四个位置,就能区分文件压缩、参考证据不足和压根没分析过这三种情形。

一条参考块代表哪个范围

HaplotypeCaller 的参考置信度模式既保留具体变异候选,也为其余位置记录相对于参考等位的证据。在逐碱基模式中,每个位点单独占行。在分块模式中,相邻且满足分组条件的非变异位置可以压成一条带结束坐标的记录。检索某个位置时,要判断它是否处在一条记录覆盖的区间,而不能只查起点等于该位置的行。带尖括号的非参考占位符表示模型为未显式列出的替代等位预留可能性,无法据此断言样本在该位置带有一个新的等位。GATK 的参考置信度模型说明

分块时还要区分该块的汇总深度和最低深度。前者可以帮助了解该区间典型的证据量,后者提示块内较弱处的深度。需要知道一个具体碱基到底有几条可用观测,应回到逐碱基输出及相应的比对证据。即使对相同文件运行另一个深度命令,不同的质量、重复、配对重叠处理也可能产生不同计数,核对时要记录采用的条件。GATK 对 GVCF 字段和参考块的解释

实跑经验|在同一段参考上同时制造四种情况

我们安装 GATK 4.7.0.0,在两千碱基的人造参考上构造四十条长度为一百的单端比对。它们起点错开,共同覆盖第四百五十位。二十条携带参考 G,二十条携带替代 A,两个等位各自都安排了正反链观测。给文件补上读组和样本,排序建索引,同时为参考建索引和字典。随后只请求第三百至第七百位,两端都计入,共四百零一个碱基。所有结果来自这一份 BAM,下面各列可以按坐标直接复核。

位置 分块 gVCF 里找到什么 逐碱基或最终结果
325,无覆盖 300–381 块,GT 0/0,GQ 0,MIN_DP 0 逐碱基 DP 0
426,有覆盖 409–449 块,GT 0/0,GQ 99,MIN_DP 33 逐碱基 DP 40,AD 40,0
450,植入 G→A GT 0/1,AD 20,20,0 分型后 GT 0/1,AD 20,20
750,请求范围外 找不到覆盖此处的记录 两种 gVCF 均无该位置
同是 0/0,证据有多强。对一个合成杂合位点同时运行分块、逐碱基及最终分型。无覆盖,325 位,参考块 GT 0/0,最低深度与基因型质量均为 0。有覆盖,426 位,逐碱基有 40 条参考读段,所在块最低深度为 33。具体变异,450 位,G→A,参考与替代各有 20 条读段。
对一个合成杂合位点同时运行分块、逐碱基及最终分型。

第三百二十五位和第四百二十六位在分块结果里都写零斜线零。前者基因型质量为零,三种可能基因型对应的似然值都一样,且没有测序深度。把它当成已可靠判到参考基因型,会把没有证据的人加入可判定分母。后者的逐碱基输出则确实有四十条参考观测、零条其他观测,基因型质量九十九。它所在的参考块报告最低深度三十三,说明不能把当前位点的四十照抄给那一整段。右边未覆盖的第六百五十位也能在另一条零质量参考块里找到,而第七百五十位连块都没有,两者在可解释范围上有本质差别。

切到逐碱基模式得到四百零一行,把分块文件的覆盖跨度按一基闭区间累加,同样覆盖四百零一个位置,只用了四十行。将分块文件交给 GenotypeGVCFs,按本次默认输出得到一条位于第四百五十位的杂合变异。原始等位深度向量中第三个零对应非参考占位符,分型后的两项深度分别是二十和二十。最终文件不再列出第三百二十五位或第四百二十六位,但它们在输入样本里的参考证据相差很大,不能从最终文件的沉默反推出证据相等。HaplotypeCaller 官方工作流程

gatk HaplotypeCaller -R ref.fa -I reads.bam -L chrToy:300-700 -ERC GVCF -O bands.g.vcf
gatk HaplotypeCaller -R ref.fa -I reads.bam -L chrToy:300-700 -ERC BP_RESOLUTION -O bases.g.vcf
gatk GenotypeGVCFs -R ref.fa -V bands.g.vcf -L chrToy:300-700 -O called.vcf

还可以做一次不依赖特殊软件的核算。读取每行的起点,若有结束字段就使用它,没有则按参考等位长度确定覆盖范围。用结束减去起点再加一,逐行累计,同时检查相邻记录是否重叠或留下空隙。如果只用行数当作处理的碱基数,会把本次四十行误报为只分析了四十个位点。对于包含较长缺失或显式多等位的真实结果,先明确是核查参考块覆盖范围,还是统计变异影响的碱基,不宜让同一套求和同时承担两种任务。

正式报告最好把分型质量和位点质量分栏。本次候选位点所在记录的样本基因型质量是九十九,用来描述这一样本的基因型判断。队列文件中的位点质量则属于另一层证据。遇到另一个样本在同一位点深度不足,不能用其他样本带来的高位点分数替它补齐基因型置信度。

队列里怎样给一个未检出的样本下结论

拿到感兴趣位点,首先核对项目要求分析的区间、参考版本、染色体命名和坐标约定。接着在样本 gVCF 里找覆盖该坐标的记录,查看它是否属于参考块,以及该块的边界、质量与最低深度。若问题直接依赖该位点,回看比对、逐碱基证据及过滤日志。这样至少可以区分有证据支持参考、当前证据不足、未纳入分析范围三类。报表若只给“检出”和“未检出”两个选项,这三种情况可能立即混在同一列。

频率计算也需要同样的检查。假设两个样本都在同一目标清单上,但一个在目标位点几乎没有覆盖,另一个明确携带替代等位,分母应按事先定义的可判定条件来取。把无覆盖者自动填成参考纯合,会改变等位频率和缺失率。阈值需要与实验类型和调用流程配套,本文的四十条人工读段不能给真实项目提供通用阈值。可以先挑出几处真实的覆盖谷和已知高质量位点,依次核对区间、参考块和最终分型,确认表格的缺失标记能把这些情形区分开。

分型时保留样本级 gVCF 和最初请求区间,日后更换队列成员或复核边界位点才有据可查。需要按区间处理整批样本时,可使用云生信的生物信息分析服务器保存中间结果并组织队列重跑。

把知识用于当前任务

下一步可以直接开始分析

按研究目标查找在线工具、课程、计算资源或完整分析服务。

按目标找方案仍有疑问,联系客服 ↗