今天梳理一下最最最最(最X100)常用的mutect2体细胞变异分析流程。主要用来分析肿瘤配对样本,寻找体细胞突变比如SNV和INDEL。官网上已经有了详细的英文版教程。

软件版本:GATK4.1.1.0

官网教程:https://gatk.broadinstitute.org/hc/en-us/articles/360035894731-Somatic-short-variant-discovery-SNVs-Indels-

看下分析的流程图,然后我们从bam文件出发分步讲解:

现在假设你已经有了normal.bam和tumor.bam文件,参考文件为reference.fasta,目标区域文件为intervals.interval_list。

1. 构建normal panel

如果你有多个normal.bam做对照,在开始之前,可以利用这些normal bam构建一个normal panel作为第2步原始候选变异检测的输入参数。(这个命令行和GATK3.8相比改动比较大了)

gatk Mutect2 -R reference.fasta -I normal1.bam -max-mnp-distance 0 -O normal1.vcf.gz
gatk Mutect2 -R reference.fasta -I normal2.bam -max-mnp-distance 0 -O normal2.vcf.gz
gatk Mutect2 -R reference.fasta -I normal3.bam -max-mnp-distance 0 -O normal3.vcf.gz
gatk GenomicsDBImport \
-R reference.fasta \
-L intervals.interval_list \
--genomicsdb-workspace-path pon_db \
-V normal1.vcf.gz \
-V normal2.vcf.gz \
-V normal3.vcf.gz
gatk CreateSomaticPanelOfNormals \
-R reference.fasta \
-V gendb://pon_db \
-O pon.vcf.gz

2. 获取原始的候选变异

这一步类似于HaplotypeCaller,先根据给出的目标区域初步筛选出候选的体细胞突变。

gatk Mutect2 \
-R reference.fa \
-I tumor.bam \
-I normal.bam \
-L intervals.interval_list \
-normal normal_sample_name \
--germline-resource af-only-gnomad.vcf.gz \
--panel-of-normals pon.vcf.gz \
--f1r2-tar-gz f1r2.tar.gz \
-O somatic.vcf.gz

GATK4.1.1.0版本开始支持多个tumor和多个normal的输入(这些样本来源于同一个个体),所以你如果需要联合多个文件进行calling的话,可以写成下面这样(数据补测的福音):

gatk Mutect2 \
-R reference.fa \
-I tumor1.bam \
-I tumor2.bam \
-I normal1.bam \
-I normal2.bam \
-L intervals.interval_list \
-normal normal1_sample_name \
-normal normal2_sample_name \
--germline-resource af-only-gnomad.vcf.gz \
--panel-of-normals pon.vcf.gz \
--f1r2-tar-gz f1r2.tar.gz
-O somatic.vcf.gz

3. 针对配对样本的交叉污染估计

这一步主要是为了获得配对样本的交叉污染估计文件calculatecontamination.table用来对原始候选体细胞突变进行筛选。

gatk Pileup \
-R reference.fasta \
-L intervals.interval_list \
-I normal.bam \
-O normal-pileups.table
gatk Pileup \
-R reference.fasta \
-L intervals.interval_list \
-I tumor.bam \
-O tumor-pileups.table
gatk CalculateContamination \
-I tumor-pileups.table \
-matched normal-pileups.table \
-O contamination.tabl

4. 测序偏好矫正及过滤

这一步主要是为了矫正测序产生的碱基偏好,对于FFPE样本来说这一步很重要。如果不是FFPE样本也可以做,并不会影响后续的结果准确度。这里用到的f1r2.tar.gz来源于第2步的输出。

gatk LearnReadOrientationModel \
-I f1r2.tar.gz \
-O read-orientation-model.tar.gz
gatk FilterMutectCalls \
-R reference.fasta \
-V somatic.vcf.gz \
--contamination-table contamination.table \
--ob-priors read-orientation-model.tar.gz \
-O filtered.vcf.gz

最后得到的filtered.vcf.gz就是过滤好的结果啦,vep注释起来,发现GATK4.1也提供了一个注释的工具Funcotator,有兴趣也可以尝试一下。

更多生信小知识关注:

利用GATK4.1 mutect2寻找体细胞突变(SNV和INDEL)相关推荐

  1. 利用素数表快速寻找 n 以内的所有素数

    http://blog.csdn.net/wxyztuv/article/details/7965556 三个函数,find_prime() 是利用素数表的方法,寻找素数的,find_prime_st ...

  2. 利用Minhash和LSH寻找相似的集合

    from: https://www.cnblogs.com/bourneli/archive/2013/04/04/2999767.html 问题背景 给出N个集合,找到相似的集合对,如何实现呢?直观 ...

  3. 利用 Web of science 寻找目标投稿期刊

    打开Web of sci 官网:http://apps.webofknowledge.com/UA_GeneralSearch_input.do?product=UA&search_mode= ...

  4. 外贸新手如何利用领英寻找你的潜在客户(建议收藏)

    说到时下流行的社交平台就不得不说twitter和facebook.那么如果说全球最大的职业社交网站,那就不得不说说LinkedIn(领英). 背景介绍和准备工作 LinkedIn(领英)有别于twit ...

  5. NeuSomatic:基于深度CNN的肿瘤体细胞突变检测工具

    作者丨Peter 单位丨某基因科技公司生物信息工程师 研究方向丨生物信息 在 3 月 4 号的"Nature"子刊中,展示了利用深度 CNN 来检测体细胞突变的新工具"N ...

  6. GATK教程 / 体细胞短变异检测 (SNV+InDel)流程概览

    体细胞短变体检测 (SNV + InDel) Somatic short variant discovery (SNVs + Indels) 目的 在单个个体的一个或多个肿瘤样本中,识别体细胞短变异( ...

  7. SNV分析软件/工具

    体细胞SNV Calling 的文献: A review of somatic single nucleotide variant calling algorithms for next-genera ...

  8. 信息收集之寻找真实ip

    信息收集之寻找真实ip 一.找到没有挂在CDN子域名 当找到子域名的真实ip时,将ip反查,主站很大几率是在这个ip或ip段内 子域名查找的原理是基于字典去跑和基于dns服务器去寻找 寻找子域的方法 ...

  9. 文章学习(一)方法类:利用CNN从专利图像导出设计特征向量

    Deriving Design Feature Vectors for Patent Images Using Convolutional Neural Networks(Journal of Mec ...

最新文章

  1. 相关滤波跟踪(MOSSE)
  2. oracle pl/sql 中目录的创建
  3. linux我ll查不到usr,Linux学习-文件查寻
  4. 为什么安装了Microsoft .NET Framework 4之后我的电脑网卡启动会变得很慢很慢。。...
  5. java postconstruct_spring框架中@PostConstruct的实现原理
  6. redis 高级实用教程
  7. 动力环境监控系统论文_动力环境监控系统现状及在电源维护中的作用
  8. SDRAM容量的计算方法
  9. SWPU ROUND #6(DIV.3)
  10. EasyUI:动态更改combox下拉框中选项
  11. 取一行多列数据中的最大值
  12. 基于BOW模型的图像检索
  13. 基于java软件工程专业教辅平台课程子系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  14. 粒子群算法(PSO) C
  15. QML中使用QSortFilterProxyModel进行排序和过滤
  16. iOS分享到WhatsApp
  17. Terraform操作阿里云实例
  18. ipa在线安装搭建_五大在线苹果企业签名平台评测:微导流居然打败了蒲公英
  19. 12 年前我刷了 500 道,谈谈我的学习感受
  20. 好程序员大数据培训分享大数据概述

热门文章

  1. Linux命令删除find,浅谈Linux下通过find命令进行rm文件删除的小技巧
  2. 去除加粗的css,CSS去掉b加粗和strong加粗标签样式
  3. 解决每次弹出“是否允许XX录制/投射您的屏幕”(享做笔记、王者荣耀等)手把手教程
  4. R语言 多个变量进行 卡方检验 循环 fisher检验 chi test 循环
  5. 手机打车APP的机遇与挑战
  6. 滞回比较器分析网址总结
  7. Python实现一键生成微信好友头像墙
  8. consul报错:consul at least one health check on one instance is failing
  9. 稿酬模式:UGC时代媒体平台如何供养生产者?
  10. win7怎么看计算机显卡内存大小,显存,教您怎么看电脑的显存