DeepVariant项目中的DeepTrio全基因组测序案例分析

DeepVariant项目中的DeepTrio全基因组测序案例分析

deepvariant DeepVariant is an analysis pipeline that uses a deep neural network to call genetic variants from next-generation DNA sequencing data. deepvariant 项目地址: https://gitcode.com/gh_mirrors/de/deepvariant

概述

DeepTrio是DeepVariant项目中专门用于家系分析(trio analysis)的工具,能够同时处理父母和子女的基因组数据,提高变异检测的准确性。本文将详细介绍如何利用DeepTrio对全基因组测序(WGS)数据进行变异检测,并通过基准测试评估结果质量。

准备工作

环境配置

运行DeepTrio需要以下工具:

  • Docker容器环境
  • 参考基因组文件
  • 基准测试数据集
  • 样本测序数据

参考基因组下载

我们使用GRCh38参考基因组,执行以下命令获取:

mkdir -p reference
FTPDIR=ftp://ftp.ncbi.nlm.nih.gov/genomes/all/GCA/000/001/405/GCA_000001405.15_GRCh38/seqs_for_alignment_pipelines.ucsc_ids

curl ${FTPDIR}/GCA_000001405.15_GRCh38_no_alt_analysis_set.fna.gz | gunzip > reference/GRCh38_no_alt_analysis_set.fasta
curl ${FTPDIR}/GCA_000001405.15_GRCh38_no_alt_analysis_set.fna.fai > reference/GRCh38_no_alt_analysis_set.fasta.fai

基准测试数据准备

使用GIAB(Genome in a Bottle) v4.2.1版本作为基准数据集:

mkdir -p benchmark
FTPDIR=ftp://ftp-trace.ncbi.nlm.nih.gov/giab/ftp/release/AshkenazimTrio

# 下载HG002(子代)、HG003(父代)、HG004(母代)的基准数据
curl ${FTPDIR}/HG002_NA24385_son/NISTv4.2.1/GRCh38/HG002_GRCh38_1_22_v4.2.1_benchmark_noinconsistent.bed > benchmark/HG002_GRCh38_1_22_v4.2.1_benchmark_noinconsistent.bed
curl ${FTPDIR}/HG002_NA24385_son/NISTv4.2.1/GRCh38/HG002_GRCh38_1_22_v4.2.1_benchmark.vcf.gz > benchmark/HG002_GRCh38_1_22_v4.2.1_benchmark.vcf.gz
# 类似命令下载其他样本数据...

样本数据获取

使用公开可用的Illumina WGS数据:

mkdir -p input
HTTPDIR=https://storage.googleapis.com/deepvariant/case-study-testdata

curl ${HTTPDIR}/HG002.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam > input/HG002.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam
curl ${HTTPDIR}/HG002.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam.bai > input/HG002.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam.bai
# 类似命令下载其他样本数据...

DeepTrio运行流程

DeepTrio分析流程包含四个主要步骤:

  1. make_examples:准备输入数据
  2. call_variants:调用变异
  3. postprocess_variants:后处理变异结果
  4. GLnexus merge:合并家系VCF文件

单命令运行DeepTrio

使用Docker容器可以简化运行流程:

BIN_VERSION="1.6.1"
sudo docker pull google/deepvariant:deeptrio-"${BIN_VERSION}"

time sudo docker run \
  -v "${PWD}/input":"/input" \
  -v "${PWD}/output":"/output" \
  -v "${PWD}/reference":"/reference" \
  google/deepvariant:deeptrio-"${BIN_VERSION}" \
  /opt/deepvariant/bin/deeptrio/run_deeptrio \
  --model_type WGS \
  --ref /reference/GRCh38_no_alt_analysis_set.fasta \
  --reads_child /input/HG002.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam \
  --reads_parent1 /input/HG003.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam \
  --reads_parent2 /input/HG004.novaseq.pcr-free.35x.dedup.grch38_no_alt.chr20.bam \
  --output_vcf_child /output/HG002.output.vcf.gz \
  --output_vcf_parent1 /output/HG003.output.vcf.gz \
  --output_vcf_parent2 /output/HG004.output.vcf.gz \
  --sample_name_child 'HG002' \
  --sample_name_parent1 'HG003' \
  --sample_name_parent2 'HG004' \
  --num_shards $(nproc) \
  --regions chr20 \
  --intermediate_results_dir /output/intermediate_results_dir \
  --output_gvcf_child /output/HG002.g.vcf.gz \
  --output_gvcf_parent1 /output/HG003.g.vcf.gz \
  --output_gvcf_parent2 /output/HG004.g.vcf.gz

关键参数说明

  • --model_type WGS:指定使用全基因组测序模型
  • --regions chr20:限制分析区域为20号染色体(加快测试速度)
  • --intermediate_results_dir:保存中间结果目录(可选)
  • --num_shards:设置并行处理数(通常设为CPU核心数)

结果合并与分析

使用GLnexus合并VCF

sudo docker run \
  -v "${PWD}/output":"/output" \
  quay.io/mlin/glnexus:v1.2.7 \
  /usr/local/bin/glnexus_cli \
  --config DeepVariant_unfiltered \
  /output/HG002.g.vcf.gz \
  /output/HG003.g.vcf.gz \
  /output/HG004.g.vcf.gz \
  | sudo docker run -i google/deepvariant:deeptrio-"${BIN_VERSION}" \
    bcftools view - \
  | sudo docker run -i google/deepvariant:deeptrio-"${BIN_VERSION}" \
    bgzip -c > output/HG002_trio_merged.vcf.gz

孟德尔遗传错误率分析

创建家系ped文件后运行分析:

FILE="reference/trio.ped"
cat <<EOM >$FILE
#PED format pedigree
1 HG002 HG003 HG004 1 0
1 HG003 0 0 1 0
1 HG004 0 0 2 0
EOM

sudo docker run \
  -v "${PWD}/input":"/input" \
  -v "${PWD}/reference":"/reference" \
  -v "${PWD}/output":"/output" \
  realtimegenomics/rtg-tools mendelian \
  -i "/output/HG002_trio_merged.vcf.gz" \
  -o "/output/HG002_trio_annotated.output.vcf.gz" \
  --pedigree=/reference/trio.ped \
  -t /reference/GRCh38_no_alt_analysis_set.sdf

典型输出结果:

Concordance HG002: F:137908/139703 (98.72%)  M:137988/139909 (98.63%)  F+M:134596/137968 (97.56%)
3886/143704 (2.70%) records contained a violation of Mendelian constraints

使用hap.py进行基准测试

sudo docker pull jmcdani20/hap.py:v0.3.12

sudo docker run \
  -v "${PWD}/benchmark":"/benchmark" \
  -v "${PWD}/input":"/input" \
  -v "${PWD}/output":"/output" \
  -v "${PWD}/reference":"/reference" \
  -v "${PWD}/happy:/happy" \
  jmcdani20/hap.py:v0.3.12 /opt/hap.py/bin/hap.py \
  /benchmark/HG002_GRCh38_1_22_v4.2.1_benchmark.vcf.gz \
  /output/HG002.output.vcf.gz \
  -f /benchmark/HG002_GRCh38_1_22_v4.2.1_benchmark_noinconsistent.bed \
  -r /reference/GRCh38_no_alt_analysis_set.fasta \
  -o /happy/HG002.output \
  --engine=vcfeval \
  --pass-only \
  -l chr20

结果解读

基准测试结果显示DeepTrio具有很高的准确性:

对于HG002样本:

  • SNP召回率(Recall): 99.66%
  • SNP精确率(Precision): 99.94%
  • INDEL召回率: 99.57%
  • INDEL精确率: 99.89%

孟德尔遗传分析显示约2.7%的记录存在遗传矛盾,这在家系分析中是预期范围内的结果,可能源于测序错误、基因组复杂区域或真实的新生突变。

总结

本案例展示了如何使用DeepTrio处理家系全基因组测序数据。通过利用父母-子女的遗传关系,DeepTrio能够提高变异检测的准确性。结果显示DeepTrio在20号染色体上的表现优异,SNP和INDEL的召回率和精确率均超过99%。这种分析方法特别适合临床遗传学研究,可有效识别新生突变和遗传变异。

deepvariant DeepVariant is an analysis pipeline that uses a deep neural network to call genetic variants from next-generation DNA sequencing data. deepvariant 项目地址: https://gitcode.com/gh_mirrors/de/deepvariant

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

章迅筝Diane

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值