gatk过滤_重测序2--看了不后悔的gatk-变异检测

本文介绍了GATK在二代测序变异检测中的应用,强调了版本差异、多样本处理中GVCf的合并重要性以及正确处理缺失数据的方法。并讨论了GATK输出文件的压缩选项,以节省存储空间。
摘要由CSDN通过智能技术生成

稍微对重测序分析有点了解的都知道gatk是干嘛的,二代变异检测的金标准,就像一个百宝箱一样,里面藏掖着众多的工具包,看文档都够看一两个月的,但是没有必要。最近事情特别多,不搞废话,变异检测流程可以参考下面的思维导图部分,每一步都有详细介绍。针对使用代码和细节大可百度。今天的目的就小说几点:(1)gatk版本问题(2)为什么多样本一定要先做gvcf,然后合并一个总的gvcf后再检测变异(3)输出文件问题

一、版本问题

gatk一直在更新版本,现在是4.*版,版本3和版本4之间差异还是蛮大的。只说一个用法需要大家注意的:(1)如果是多样本的数据,版本4里面最后一步变异检测是需要一个总的合并后的多样本gvcf文件(先对单样本进行gvcf文件的输出,参考思维导图,再合并多样本结果)。输入只有一个gvcf,输出是一个包含所有样本的vcf变异检测结果。(2)如果是版本3,版本3的gatk支持输出单样本的gvcf后,不用经过合并gvcf的步骤也可以直接进行变异检测输出vcf。版本3支持同时输入多个gvcf文件! 所以可以省略gvcf合并步骤。我觉得就应该是这样,因为合并gvcf一个是数据量特别大,运行比较耗时,而且扩展性不强,总不能后续我们新测了样本还得先跑一次gvcf文件的合并再做分析吧(其实可以只针对指定位点进行,但这就不太合理了,因为样本存在着特异或者亚群类型的变异,就会有很大影响),每次都这么干肯定不太合适。当然了,也许gatk官方有着其他考虑所以这么做了。

还有一个需要注意的事,版本三四不是绝对通用的,不要想着用版本4做出来的gvcf,用版本3不合并的跑变异检测。即便你们测试能跑除非是项目紧急可以这么处理,但貌似是会遇到一些问题的。

二、为什么多样本一定要先合并gvcf在做变异检测

这里的合并并不是上面说的合并步骤,而是检测变异时一定要所有样本先放一起,如果是版本3,处理是最后一步把所有样本的gvcf文件作为输入。如果是版本4,则需要先把所有样本合并成一个总的gvcf文件再做变异检测。

为什么?因为有的人可能会顺着大家介绍的流程,直接单个样本跑到了vcf变异检测的结果。最后会问:哎呀,不是说可以直接合并vcf文件吗,我合并vcf文件不就完了吗。这种处理最大的问题是关于缺失是真实缺失还是因为是0/0跟参考基因组一致而没有被输出!如果直接合并vcf文件,就会因为有很多真实是0/0的被认为是缺失而被过滤掉,造成数据偏差较大。所以,一定要多样本共同检测变异。

三、输出文件

很多人并不知道,输出文件是可以直接输出压缩格式的gvcf或者vcf的。一个gvcf文件如果不压缩的话,2g多的基因组测15X左右就可能一个染色体有几十G的硬盘存储。如果你还在傻傻的用培训班上或者推文教程里面的说明做输出的是一个文本格式的gvcf文件,那你可以跟我们联系,我们告诉你这个怎么用,让你节约至少3/4的硬盘空间。

最后,是不是觉得每一步都很繁琐,这么多步骤,参数都用哪些,输入输出怎么处理,几十上百的样本我总不能一个个单独跑吧。如果你资源有限、生信能力有限但又想快速的完成分析,可以联系我们,既能找到硬件资源(有些人租用的服务器要么是DDR3内存等价格低廉的硬件资源,要么就是十几二十人共用一个小资源的服务器,也就仅能满足学习需求,对分析需求的基本没有任何帮忙)又能找到软件资源,在最低的成本下帮完成分析任务。

5900001298add21caa746caff8eb6b47.png
GATK(Genome Analysis Toolkit)是一款强大的生物信息学工具,用于分析基因组数据。VariantFiltration 是 GATK 中的一个功能,用于对基因组变异进行过滤和评估。其中的参数 --genotype-filter-name 和 -G-filter-name 用于指定使用特定的过滤规则对基因型数据进行过滤。 使用这些参数时,你需要指定一个或多个过滤规则的名称。这些名称通常是在 GATK过滤规则文件(例如,GQT, GVCF, or BQSR)中定义的。你可以通过在命令行中指定这些文件来使用它们。 下面是一个基本的 GATK VariantFiltration 命令示例,使用 --genotype-filter-name 参数: ```bash gatk VariantFiltration --genotype-filter-name MyFilter \ -R reference.fasta \ -V input.vcf \ -O output.vcf ``` 在这个例子中,我们使用了名为 "MyFilter" 的过滤规则。你需要将 "MyFilter" 替换为你想要使用的实际过滤规则的名称。该命令会将变异数据经过过滤,并将过滤后的结果输出到 output.vcf 文件中。 同样,你还可以使用 -G-filter-name 参数来使用全局过滤规则。例如: ```bash gatk VariantFiltration -G GATKGlobalFilter \ -R reference.fasta \ -V input.vcf \ -O output.vcf ``` 在这个例子中,我们使用了名为 "GATKGlobalFilter" 的全局过滤规则。你需要将 "GATKGlobalFilter" 替换为你想要使用的实际全局过滤规则的名称。 请注意,具体的命令和参数可能会根据你的数据和需求而有所不同。在使用 GATK 进行 VariantFiltration 时,建议参考 GATK 的官方文档和示例,以确保正确使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值