gnomAD

gnomAD — Genome Aggregation Database 基因组聚合数据库 | 千方病案医数集

来源 Broad Institute of MIT and Harvard, 60+ 国际研究项目合作发布时间: 2026-08-04最后更新: 2026-08-04 阅读 2

信息速览

数据集名称gnomAD
数据类型VCF, CC0, Hail, GCP/AWS/Azure, 约 30TB
规模807,162 名个体(v4.1)
接入方式Broad Institute of MIT and Harvard, 60+ 国际研究项目合作
AI 就绪度

INFOBOX

数据集名称 gnomAD (Genome Aggregation Database)
英文全称 Genome Aggregation Database
别名 / 简称 gnomAD、gnomAD v4、ExAC(前身)、基因组聚合数据库
疾病分类 不限特定疾病——覆盖全编码区变异频率,服务于罕见病诊断、肿瘤基因组、药物基因组学等全域遗传学。核心映射:LD00 营养不良 / LD24 染色体异常 / LD1Z 单基因遗传病
SNOMED CT 33496008 Genomic variant ( genomic variant) / 312870007 Genetic testing (procedure) / 363779008 Variant (qualifier value)
数据模态 基因组变异数据(SNVs、InDels、SVs、CNVs、de novo variants)+ 基因约束指标 + 覆盖度数据 + 表达比例 (pext)
AI 任务类型 变异致病性预测(分类/回归)、蛋白语言模型预训练、约束指标计算、药物靶点发现、携带者筛查频率参考
样本总数 807,162 名个体(v4.1:730,947 外显子组 + 76,215 全基因组)
变异总数 >10 亿(786.5M SNVs + 122.6M InDels + 1,199,117 SVs + 66,903 coding CNVs + 1,953 de novo coding variants)
数据大小 ~30 TB(全量发布数据,含 VCF + Hail Table + 覆盖度 + 约束指标 + SV + CNV)
数据格式 VCF(变异调用格式)/ Hail Table(分布式列式存储)/ TSV(约束指标)/ BED(覆盖度)/ BigWig(基因组轨迹)
参考基因组 v2: GRCh37/hg19 / v3 & v4: GRCh38/hg38
许可证 CC0 1.0 Universal(公共领域,无使用限制)
访问级别 完全开放(无需注册,无需签署协议,三朵云直接下载)
DUO 标签 NRES(无限制使用)
遗传祖先群体 9 组:afr (非洲/非裔美国人)、ami (阿米什)、amr (混血美洲)、asj (德系犹太人)、eas (东亚)、fin (芬兰)、mid (中东)、nfe (非芬兰欧洲)、sas (南亚)
首发日期 2014-10(ExAC 发布)/ 2017-08(gnomAD v2 发布)/ 2024-11(gnomAD v4 发布)
最后更新 2026-03(gnomAD v4.1.1)
发布机构 Broad Institute of MIT and Harvard(与 60+ 国际研究项目合作)
核心论文 Karczewski et al., Nature 581:434–443 (2020) — 15,000+ 引用
周访问量 150,000+ 独立访问者/周(全球 190+ 国家)
AI 就绪度 ★★★★★(CC0 许可、标准化 VCF/Hail 格式、完整文档、三朵云托管、gnomad-toolbox Python 包、Hail 原生支持)

§0 E-E-A-T 信任声明与免责声明

维度 声明
Experience(经验) gnomAD 由 Broad Institute Daniel MacArthur 团队于 2014 年发起,融合 60+ 国际研究项目的测序数据。核心团队包括 Konrad Karczewski、Benjamin Neale、Daniel MacArthur、Heidi Rehm 等领域权威。从 ExAC (60K) → gnomAD v2 (141K) → v3 (76K genomes) → v4 (807K) 的迭代积累了 12 年大规模变异分析经验。
Expertise(专业) 团队发表论文于 Nature (IF 64.8)、Nature Genetics (IF 30.8)、Science 等顶级期刊。gnomAD 的 LOEUF 约束指标已被 ACMG/AMP 变异分类指南采纳为人群频率评估的主要参考。
Authoritativeness(权威) gnomAD 是全球遗传学实验室进行变异解读时使用频率最高的人群频率数据库。被 ClinGen 专家面板、ACMG、AMP 指南正式引用。被 AlphaMissense (DeepMind)、ESM-2 (Meta)、PrimateAI (Illumina) 等 AI 模型作为核心训练数据。
Trustworthiness(可信) 全数据 CC0 公共领域许可。QC 流程透明公开,所有分析代码在 GitHub 开源 (gnomad_qc, gnomad_methods)。样本来源经各参与机构 IRB 审批,排除已知严重儿科疾病患者及一级亲属。
审核 [千方病案医学编辑部] 交叉审核:基因组学数据规格、约束指标方法论、ACMG/AMP 分类标准、AI/ML 应用案例

页面状态: published

强制免责声明: 本百科条目仅供学术研究和 AI 模型训练参考,不构成任何医学诊断或治疗建议。变异的致病性判定需由具备资质的临床遗传学家或分子病理学家根据 ACMG/AMP 指南、患者临床表型、家族史及功能实验等综合判断。gnomAD 中包含的个体并非严格意义上的"健康人"——虽然排除了已知严重儿科疾病患者,但可能包含成人常见疾病(心血管、代谢、肿瘤等)患者。

§0 出版与审核声明page_status: published核心论文: Karczewski et al., Nature 581:434–443 (2020),DOI: 10.1038/s41586-020-2308-7;Chen et al., Nature 625:92–100 (2024);Collins et al., Science 366:1345–1350 (2019, SV);Babadi et al., Nature Genetics 55:1619–1627 (2023, gCNV)。导航锚点: §1 概览 | §2 背景 | §3 规格 | §4 下载 | §5 方法 | §6 AI | §7 坑点 | §8 SOTA | §9 资源 | §10 声明 | §C 校验

§1 数据集概览

§1.0 📌 30 秒速览

gnomAD(Genome Aggregation Database,基因组聚合数据库)是 Broad Institute 维护的全球最大公开人类遗传变异频率数据库。它从 2014 年发布的 ExAC(60,706 外显子组)起步,经历了 gnomAD v2(141,456 人)、gnomAD v3(76,156 全基因组)的迭代,至 2024 年发布的 v4 版本已覆盖 807,162 人(730,947 外显子组 + 76,215 全基因组),包含超过 10 亿变异。gnomAD 的核心价值在于:

  1. 临床变异解读金标准:ACMG/AMP 指南将 gnomAD 人群频率作为"良性"证据(BA1/BS1)的主要参考来源——如果一个变异在"健康"人群中频率过高,就不可能是导致严重罕见病的致病变异
  2. 基因约束指标:LOEUF(Loss-of-function Observed/Expected Upper bound Fraction)量化每个基因对功能丧失变异的不耐受程度,是筛选疾病候选基因的关键工具
  3. AI 训练基础设施:AlphaMissense (Google DeepMind) 以 gnomAD 人群频率作为标签微调 AlphaFold,分类 89% 人类错义变异为可能良性/致病

gnomAD 的数据以 CC0 公共领域许可发布,通过 Google Cloud、AWS、Azure 三朵云免费下载,无需注册。其 Hail 框架原生支持 PB 级基因组数据的分布式查询,gnomad-toolbox Python 包提供了简化的数据加载和过滤接口。

§1.1 版本演进全景

版本 发布年份 外显子组 全基因组 总人数 参考基因组 核心论文 引用数
ExAC r1 2014-10 60,706 0 60,706 GRCh37 Lek et al. Nature 536:285–291 (2016) 8,000+
gnomAD v2.1.1 2017-08 125,748 15,708 141,456 GRCh37 Karczewski et al. Nature 581:434–443 (2020) 15,000+
gnomAD v3.1.2 2019-10 0 76,156 76,156 GRCh38 Chen et al. Nature 625:92–100 (2024) 2,000+
gnomAD v4.0 2023-11 557,624 76,215 633,839 GRCh38 预印本 500+
gnomAD v4.1 2024-11 730,947 76,215 807,162 GRCh38 预印本 300+

版本选择指南

  • 临床变异解读(GRCh37):继续使用 gnomAD v2.1.1——许多临床实验室的 pipeline 仍基于 GRCh37,v2 的 141K 外显子组对编码区变异的统计功效依然足够
  • 临床变异解读(GRCh38):使用 gnomAD v4.1——样本量是 v2 的 5.7 倍,祖先多样性更好,且 align 到最新参考基因组
  • 非编码区变异:使用 gnomAD v3.1.2 或 v4.1 的基因组数据——外显子组数据不覆盖非编码区
  • 结构变异 (SV):使用 gnomAD v4 SV 数据(63,046 基因组 + 464,297 外显子组 CNV)
  • 基因约束指标:使用 v4.1 约束指标表——样本量更大,统计功效更高,LOEUF 阈值从 v2 的 <0.35 调整为 <0.45

§1.2 v4.1 关键统计

类别 数量 说明
总个体数 807,162 730,947 外显子组 + 76,215 全基因组
SNVs 786,508,620 单核苷酸变异
InDels 122,627,162 插入/缺失变异
SVs (基因组) 1,199,117 结构变异(≥50bp,63,046 无关基因组中检出)
Coding CNVs 66,903 罕见编码区拷贝数变异(464,297 外显子组中检出,排除 >1% 常见 CNV)
De novo variants 1,953 编码区 de novo 变异(1,517 三人组中检出)
UK Biobank 个体 416,555 占总样本 51.6%,v4.1 新增
非欧洲血统个体 ~138,000 占总样本 ~17%(afr ~52K, amr ~28K, sas ~17K, eas ~10K, asj ~5K, fin ~17K, mid ~1K, ami ~1K)
基因约束指标 19,197 基因 含 LOEUF / pLI / Missense Z / Synonymous Z
极度 LoF 不耐受基因 2,556 LOEUF < 0.45(v4.1 阈值,对应 v2 的 pLI ≥ 0.9 / LOEUF < 0.35)
数据总量 ~30 TB VCF + Hail Table + 覆盖度 + 约束指标 + SV + CNV

§1.3 数据来源构成

gnomAD v4.1 的 807,162 个个体来自 60+ 国际研究项目,主要包括:

来源项目 样本数(约) 数据类型 备注
UK Biobank 416,555 外显子组 英国生物样本库,v4 新增的最大单一来源
DiscovEHR (Geisinger) ~50,000 外显子组 美国宾州 Geisinger 医疗系统
CCDG (Center for Common Disease Genomics) ~30,000 外显子组/基因组 NHGRI 资助的常见病基因组学中心
TOPMed ~部分重叠 基因组 NHLBI 精准医学转化组学项目
ExAC 遗留队列 ~60,706 外显子组 原 ExAC 数据,扩展后并入 gnomAD
罕见病研究队列 ~80,000 外显子组 多个罕见病研究项目(排除了已知致病变异携带者)
人群遗传学研究 ~20,000 外显子组/基因组 包括 HGDP (Human Genome Diversity Project)、1KG (1000 Genomes) 子集
其他研究项目 ~150,000 外显子组/基因组 心血管、代谢、精神疾病等多个研究领域

关键排除标准:gnomAD 排除了已知严重儿科疾病患者及其一级亲属。但可能包含成人常见疾病(心血管、糖尿病、肿瘤等)患者——因此 gnomAD 并非严格的"健康人"数据库,在使用时需考虑这一因素对频率估计的影响。

§2 基因组学背景

§2.1 人类基因组变异全景

人类基因组包含约 32 亿碱基对,任何两个无关个体之间约存在 400–500 万个变异(包括 SNVs、InDels、SVs)。其中:

  • 常见变异(MAF ≥ 1%):大多数为良性,受随机遗传漂变驱动
  • 低频变异(0.1% ≤ MAF < 1%):部分可能影响疾病风险
  • 罕见变异(MAF < 0.1%):高度富集致病变异,是罕见病诊断的核心搜索空间
  • 新发变异(de novo):每代每外显子组约 1.2 个编码 de novo 变异,是重度神经发育障碍的主要遗传病因

在 gnomAD v4.1 的 807,162 人中,>99% 的编码变异频率 <0.01%(极端稀有),仅 CpG 二核苷酸位点(基因组最高突变率区域)的 synonymous 变异接近饱和(已观察到 ~85% 可能变异)。

§2.2 纯化选择与基因约束

纯化选择 (Purifying Selection) 是分子进化的核心力量——对个体生存或繁殖不利的变异会被自然选择移除,导致其在人群中频率降低。基因对功能丧失 (LoF) 变异的耐受程度(“约束”)反映了该基因对生物体的重要性:

  • 高度约束基因(如 TP53BRCA1):杂合 LoF 导致严重疾病(单倍剂量不足),人群中几乎观察不到 LoF 变异
  • 中度约束基因:LoF 变异频率低于预期但并非完全缺失
  • 低约束基因(如 OLFM2):LoF 变异在人群中以接近预期频率存在,提示杂合 LoF 可耐受

gnomAD 将这一原理量化为约束指标,核心思路是比较观察到的 LoF 变异数与基于突变率模型预测的预期数

oe (observed/expected) = 观察到的 LoF 变异数 / 预期 LoF 变异数
  • oe = 1.0:观察 = 预期,该基因对 LoF 中性(无选择压力)
  • oe << 1.0:观察远少于预期,该基因对 LoF 高度不耐受(强约束)
  • oe ≈ 0.5:约半数预期 LoF 变异被观察到,表明中等选择压力

人类基因组中位 oe 值约为 0.48,意味着大多数基因表现出至少中等程度的 LoF 选择。

§2.3 突变率模型

gnomAD 约束指标的"预期"变异计数基于一个考虑多因素的突变率模型:

因子 影响机制 模型处理方式
三核苷酸上下文 突变率取决于参考碱基及其两侧各 1 个碱基(如 CpG → TpG 转换速率最高) 对 96 种三核苷酸上下文分别估计突变率
CpG 甲基化 甲基化 CpG 的 C → T 脱氨速率是未甲基化的 10–50 倍 按组织平均甲基化水平分 3 级(低/中/高)分别建模
覆盖度 低覆盖度区域变异数会被低估 基于中位覆盖度的对数模型校正低覆盖碱基的预期计数
测序技术 外显子组捕获探针差异导致覆盖不均 按捕获平台分层估计
序列复杂度 重复序列区域比对错误率高 排除低 mappability 区域

该模型在 synonymous 变异上验证:观察/预期比值的线性回归 r = 0.979,表明模型对中性变异的预测高度准确。

§2.4 等位基因频率与临床解读

ACMG/AMP 变异分类指南 (Richards et al., Genetics in Medicine 2015) 使用人群等位基因频率作为变异良性/致病性分类的关键证据:

ACMG 证据 标准 gnomAD 使用方式
BA1 (Benign Stand-alone) 等位基因频率 >5% 在 ≥1 人群数据库 直接判为良性,无需其他证据
BS1 (Benign Strong) 等位基因频率高于疾病预期 使用 grpmax FAF(群体最大过滤等位基因频率)与疾病最大可信等位基因频率 (AF_max) 比较
BS2 (Benign Strong) 在健康成年人中以纯合/半合子状态观察到 查询 gnomAD 基因型表
PM2 (Pathogenic Moderate) 在适当的人群数据库中不存在(极低频率或完全缺失) 检查 gnomAD 中该变异的 allele count 和 allele number

Whiffin 框架——最大可信人群等位基因频率 (AF_max)

AF_max = (疾病患病率 × 遗传异质性) / 外显率

例如:某常染色体显性遗传病患病率 1/10,000,已知致病变异占 30%(遗传异质性),外显率 90%:
AF_max = (1/10,000 × 0.30) / 0.90 = 3.3 × 10⁻⁵

如果该基因致病突变在 gnomAD 中的 grpmax FAF > 3.3 × 10⁻⁵,则该变异支持 BS1(良性强证据)。

§2.5 gnomAD 遗传祖先群体

gnomAD 使用主成分分析 (PCA) + 随机森林分类器将样本分为 9 种遗传祖先群体:

代码 群体名称 v4.1 样本数(约) 备注
afr 非洲/非裔美国人 52,000 包含非洲裔美国人及非洲大陆样本
ami 阿米什 1,000 美国阿米什社区,创始人效应群体
amr 混血美洲 28,000 拉丁美洲混血群体
asj 德系犹太人 5,000 创始人效应显著,特定致病变异富集
eas 东亚 10,000 包含中国、日本、韩国
fin 芬兰 17,000 芬兰疾病遗产 (FDH) 群体,瓶颈效应
mid 中东 1,000 样本量最小,统计功效有限
nfe 非芬兰欧洲 660,000 最大群体(含 UK Biobank),占总样本 82%
sas 南亚 17,000 印度次大陆

grpmax FAF (Group Maximum Filtering Allele Frequency):gnomAD v4 引入的新指标,定义为 9 种祖先群体中某变异等位基因频率的 95% 置信区间下界的最大值。相比简单的群体最大 AF,FAF 更保守(偏低估计),避免了因小样本群体中的偶然高频导致的假阳性良性分类。

§2.6 群体特异性变异与创始人效应

某些致病变异在特定群体中富集,源于历史上的群体瓶颈或创始人效应:

群体 代表性致病变异 群体频率 疾病
fin NPC1 c.1554-1009G>A (FDH) ~1/200 携带 Niemann-Pick C
asj BRCA1 185delAG ~1/40 携带 遗传性乳腺/卵巢癌
asj GBA 84GG ~1/18 携带 Gaucher 病
afr APOL1 G1/G2 ~30% 携带 非裔美国人肾病风险
amr MUTYH c.1187G>A ~1/50 携带 MAP 综合征

临床意义:在评估特定群体患者的变异时,必须使用群体特异频率而非全局频率。一个在 nfe 中频率 0.001% 的变异,可能在 asj 中频率 0.5%——如果后者超过了疾病 AF_max,则应判为良性 (BS1)。

§2.7 从 gnomAD 到药物靶点发现

gnomAD 的"自然实验"为药物靶点验证提供了独特视角——人群中的 LoF 变异携带者相当于天然的基因敲低/敲除模型

靶基因 LoF 变异效应 药物开发 状态
PCSK9 LDL-C 降低 ~40% Evolocumab, Alirocumab (PCSK9 抑制剂) FDA 批准 (2015)
ANGPTL3 LDL-C + TG 降低 Evinacumab (ANGPTL3 抑制剂) FDA 批准 (2021)
APOC3 TG 降低 ~40% Volanesorsen (APOC3 反义寡核苷酸) EMA 批准
SLC30A8 T2D 风险降低 65% 多个 ZnT8 调节剂在研 临床前/临床
APOE LoF 携带者无高脂血症 APOE 靶向基因治疗 早期研究

PCSK9 故事:2003 年研究发现一个法国家族 PCSK9 错义突变导致高 LDL-C;随后 gnomAD/ExAC 发现 PCSK9 无义突变携带者 LDL-C 降低 40% 且无明显不良反应——这直接验证了 PCSK9 作为药物靶点的安全性和有效性,推动了 PCSK9 抑制剂的研发(从发现到 FDA 批准仅 12 年)。

§3 完整技术规格

§3.1 数据层级与文件结构

gnomAD v4.1 发布数据按数据类型组织:

gnomad/release/4.1/
├── exomes/
│   ├── gnomad.exomes.v4.1.sites.vcf.gz          # 位点级 VCF(所有变异的频率 + 注释)
│   ├── gnomad.exomes.v4.1.sites.ht/              # Hail Table 格式(同上,分布式查询)
│   ├── gnomad.exomes.v4.1.coverage_summary.ht/    # 覆盖度汇总
│   └── gnomad.exomes.v4.1.all_sites_an.ht/        # 所有位点的 allele number
├── genomes/
│   ├── gnomad.genomes.v4.1.sites.vcf.gz          # 位点级 VCF
│   └── gnomad.genomes.v4.1.sites.ht/              # Hail Table 格式
├── joint/
│   └── gnomad.joint.v4.1.sites.vcf.gz            # 外显子组+基因组联合位点 VCF
├── constraint/
│   ├── gnomad.v4.1.constraint_metrics.tsv        # 基因约束指标表(LOEUF, pLI, Z-scores)
│   └── gnomad.v4.1.constraint_metrics.ht/         # Hail Table 格式
├── sv/
│   ├── gnomad.v4.1.sv.sites.vcf.gz               # 基因组结构变异(63,046 基因组)
│   └── gnomad.v4.1.sv.sites.bed                   # BED 格式
├── cnv/
│   ├── gnomad.v4.1.cnv.exomes.vcf.gz             # 罕见编码 CNV(464,297 外显子组)
│   └── gnomad.v4.1.cnv.exomes.bed
├── de_novo/
│   └── gnomad.v4.1.de_novocoding.tsv             # 编码 de novo 变异(1,517 三人组)
├── pext/
│   └── gnomad.v4.1.pext.tsv                       # 跨组织表达比例
└── coverage/
    ├── gnomad.exomes.v4.1.coverage.ht/
    └── gnomad.genomes.v4.1.coverage.ht/

§3.2 变异检出流程

gnomAD v4 外显子组变异检出流程基于 GATK Best Practices,关键步骤:

阶段 工具/方法 说明
1. 序列比对 BWA-MEM → GRCh38 包含 alt contig 的完整参考基因组
2. 排序标记 Picard SortSam + MarkDuplicates 去除 PCR 重复
3. Base Quality Score Recalibration GATK BQSR 基于已知变异位点校正碱基质量
4. gVCF 生成 GATK HaplotypeCaller -ERC GVCF 每个样本独立 calling
5. 联合 Genotyping GATK GenomicsDBImport + GenotypeGVCFs v4 改用 VariantDataset (VDS) 格式存储
6. 变异质量过滤 GATK VQSR (Variant Quality Score Recalibration) 使用大型项目位点训练模型
7. 样本 QC Hail 自定义 QC 管道 硬过滤 + PCA + 亲缘关系分析
8. 变异注释 VEP (Variant Effect Predictor) v112+ 含 LoFTEE (LoF Transcript Effect Estimator)
9. 约束指标计算 Hail + 自定义 Python 脚本 基于 3-mer 突变率模型

§3.3 样本质量控制 (Sample QC)

gnomAD v4 样本 QC 管道包含以下关键步骤:

QC 步骤 指标 过滤标准
污染检测 基于基因型数据的污染估计 (VerifyID/新兴方法) 污染率 > 5% 排除
覆盖度 样本平均深度 外显子组 < 20X 或 > 150X 排除
杂合度 Het/Hom 比率 偏离群体均值 > 3 SD 排除
测序平台 PCA 聚类 区分 20+ 种外显子捕获平台,排除异常
性别核型 X/Y 染色体覆盖度 性染色体异常样本排除
亲缘关系 KING/PC-Relate 一级亲属 (kinship ≥ 0.25) 仅保留一人
祖先推断 PCA + 随机森林 9 群体分类,异常样本排除
重复样本 kinship ≥ 0.42 保留质量最高者

v4 新增——Interval QC:为解决外显子组覆盖不均的问题,gnomAD v4 引入了 interval 级 QC——对每个捕获探针区间计算样本级覆盖度,仅保留 >85% 样本达到 >20X 的区间作为 high coverage intervals。这一过滤确保了约束指标计算的可靠性。

§3.4 变异质量控制 (Variant QC)

QC 步骤 方法 说明
VQSR GATK VariantRecalibrator + ApplyVQSR 使用大型项目(1000G, Omni, HapMap)位点训练模型
allele balance 杂合子 alt/read 比率 [0.25, 0.75] 范围外过滤
depth 位点总深度 过高深度提示比对错误
InbreedingCoeff 群体内 Hardy-Weinberg 偏离 显著偏离的位点可能为假阳性
AC0 过滤 allele count = 0 的 allele 清除 VQSR 后无 alt 读支持的 allele

§3.4.1 Hail 与 VariantDataset (VDS) 架构

gnomAD v4 的核心创新之一是从 gVCF 格式转向 VariantDataset (VDS) 格式存储联合 callset。Hail 框架由 Broad Institute 开发,专为 PB 级基因组数据设计:

特性 gVCF (v2) VDS (v4) 优势
存储效率 每个样本一个 gVCF,全量合并后极大 列式压缩,仅存储非参考 allele ~3–5 倍存储压缩
查询速度 需先 GenotypeGVCFs 合并 直接分布式查询 全量频率查询快 10–100 倍
扩展性 ~100K 样本后性能瓶颈 已验证 1M+ 样本 线性扩展
QC 迭代 每次重做 callset 增量 QC(在 VDS 上直接过滤) QC 迭代快 10 倍

Hail 的核心设计理念:将基因组数据表示为分布式矩阵(行 = 基因组位点,列 = 样本),使用 Spark/Service 后端并行计算。gnomAD 团队的所有 QC、频率计算、约束指标计算均在 Hail 上完成,确保了分析方法的可复现性和可扩展性。gnomad_qc 仓库包含了 v4 QC 管道的全部 Hail 代码。

§3.5 LoFTEE——高质量 LoF 变异注释

LoFTEE (Loss-of-Function Transcript Effect Estimator) 是 gnomAD 团队开发的 VEP 插件,用于严格筛选高置信度蛋白截短变异(stop-gained, frameshift, splice donor/acceptor):

过滤维度 标准 说明
位置 排除最后 exon 的最后 5% 避免 NMD 逃逸
剪接 距离 exon-intron 边界 ±1-2 bp 严格剪接位点
MANE Select 优先使用 MANE Select 转录本 确保临床可解释性
_HC flag HC (high confidence) vs LC (low confidence) HC 变异用于约束指标计算

§3.6 结构变异 (SV) 检出

gnomAD v4 SV 数据使用 GATK-SV (Collins et al., Science 2020)——一个云端联合 calling 管道:

特性 v2 SV v4 SV
检出方法 Manta + DELLY + MELT + cn.MOPS 四算法集成 GATK-SV 统一管道
基因组数 10,738 63,046
SV 数量 445,857 1,199,117
参考基因组 GRCh37 GRCh38
CNV 来源 464,297 外显子组(GATK-gCNV, Babadi et al. 2023)

GATK-SV 集成多个检出算法(Manta, DELLY, Wham, CNn, Scissors),通过机器学习过滤整合,检出 7 种 SV 类型:DEL (缺失)、DUP (重复)、INS (插入)、INV (倒位)、BND (断点)、CPX (复杂)、CTX (染色体间易位)。

§3.7 De Novo 变异检出

gnomAD v4.1 新增 1,953 个编码 de novo 变异,来自 1,517 三人组(父母-后代):

参数
三人组来源 gnomAD v4.1 外显子组(无血缘关系三人组)
检出方法 Hail hl.de_novo + Samocha de novo caller
过滤标准 低置信区域排除、无 * alt allele、通过 variant QC、编码后果、等位基因频率/计数过滤
每人 de novo 变异数 ~1.29(与 Kaplanis & Samocha et al. Nature 2020 报告的预期率一致)
置信度 高/中置信度(排除低置信度)

§4 下载与快速启动

§4.1 三朵云下载

gnomAD 数据通过三大云平台免费提供,无需认证:

# Google Cloud Public Datasets
gsutil ls gs://gcp-public-datagnomad/release/4.1/
gsutil cp gs://gcp-public-datagnomad/release/4.1/constraint/gnomad.v4.1.constraint_metrics.tsv ./

# AWS Registry of Open Data
aws s3 ls s3://gnomad-public-us-east-1/release/4.1/ no-sign-request
aws s3 cp s3://gnomad-public-us-east-1/release/4.1/constraint/gnomad.v4.1.constraint_metrics.tsv ./

# Azure Open Datasets
azcopy ls https://azureopendatastorage.blob.core.windows.net/gnomad/release/4.1/
azcopy cp https://azureopendatastorage.blob.core.windows.net/gnomad/release/4.1/constraint/gnomad.v4.1.constraint_metrics.tsv ./

§4.2 Hail + gnomad-toolbox 快速启动

# 安装 Hail
pip install hail

# 安装 gnomad-toolbox
pip install gnomad-toolbox

# 安装 Google Cloud Storage Connector(免认证访问公共数据)
curl -sSL https://broad.io/install-gcs-connector | python3 - auth-type UNAUTHENTICATED
import hail as hl
hl.init()  # 初始化 Hail 上下文

# === 加载 gnomAD v4.1 外显子组变异 ===
from gnomad_toolbox.load_data import get_gnomad_release

# 加载约束指标表
conevent-blocked= get_gnomad_release(dataset="constraint", version="4.1")
constraint_ht.describe()

# 查看最约束的 20 个基因
top_conevent-blocked= constraint_ht.order_by(hl.asc(constraint_ht.lof.oe_upper)).head(20)
top_constrained.select(
    gene=constraint_ht.gene_symbol,
    loeuf=constraint_ht.lof.oe_upper,
    pLI=constraint_ht.lof.pLI,
    observed=constraint_ht.lof.obs,
    expected=constraint_ht.lof.exp
).show(20)

§4.3 Google Cloud Dataproc 集群

对于需要查询全量变异数据的分析,推荐在 Google Cloud Dataproc 上启动 Hail 集群:

# 启动带 gnomad 包的 Dataproc 集群
hailctl dataproc start gnomad-cluster \
    packages gnomad \
    worker-machine-type n1-highmem-8 \
    num-workers 4 \
    public-ip-address  # Hail 0.2.131+ 必需

# 连接到 Jupyter Notebook
hailctl dataproc connect gnomad-cluster notebook

# 完成后关闭集群
hailctl dataproc stop gnomad-cluster

§4.4 浏览器在线查询

gnomAD 浏览器 (https://gnomad.broadinstitute.org/) 支持按基因、变异 (rsID/坐标)、区域查询:

查询类型 输入格式 输出内容
基因 基因符号 (如 BRCA1) 该基因所有变异的频率表、约束指标、覆盖度图、pext 表达
变异 rsID (如 rs28934875) 或 坐标 (如 1-55051215-G-A) 该变异的等位基因频率(全局 + 9 群体)、基因型表、质量指标、VEP 注释
区域 chr:start-end (如 17:43044295-43125483) 该区域内所有变异列表

§4.5 BigQuery 查询

gnomAD 变异数据也作为 BigQuery 公共数据集提供,支持 SQL 查询:

 查询 BRCA1 基因所有 LoF 变异
SELECT
  chrom,
  pos,
  ref,
  alt,
  allele_count,
  allele_number,
  allele_frequency
FROM
  `gnomad.v4.genomes`
WHERE
  gene = ''''''''BRCA1''''''''
  AND conevent-blocked= ''''''''stop_gained''''''''
ORDER BY
  allele_frequency DESC;

§5 方法论指南

§5.1 基因约束指标详解

gnomAD 提供 4 种约束指标,量化基因对不同变异类型的不耐受程度:

5.1.1 LOEUF (Loss-of-function Observed/Expected Upper bound Fraction)
属性
定义 LoF 变异观察/预期比值的 90% 置信区间上界
范围 [0, ∞),值越低约束越强
推荐阈值 v4.1: < 0.45 (2,556 基因); v2: < 0.35 (2,968 基因)
优点 连续度量、带置信区间、可直接解释(“该基因仅观察到 X% 的预期 LoF 变异”)
局限 对短基因统计功效不足(约 30% 基因在当前样本量下功效不够);受覆盖度影响;无法检测纯合 LoF 约束
5.1.2 pLI (Probability of being Loss-of-function Intolerant)
属性
定义 基因属于"单倍剂量不足"类别的概率(基于 3 类混合模型:null / recessive / haploinsufficient)
范围 [0, 1],值越接近 1 约束越强
推荐阈值 ≥ 0.9 (3,060 基因)
优点 二分类友好,广泛用于临床和研究
局限 不连续(要么高要么低,中间值难解释);对小基因统计功效不足;不提供置信区间

从 pLI 到 LOEUF 的转变:gnomAD 团队推荐使用 LOEUF 替代 pLI,因为 LOEUF (1) 提供连续度量而非二分类,(2) 带置信区间可评估统计功效,(3) 解释更直观(oe = 0.4 = “仅观察到 40% 预期变异”)。但在临床实践中 pLI ≥ 0.9 仍被广泛使用,两者在临床应用中大致等价。

5.1.3 Missense Z-score
属性
定义 错义变异观察-预期偏差的 Z 分数
范围 正值 = 约束(变异少于预期),负值 = 变异多于预期
推荐阈值 ≥ 3.09 (p < 0.001,显著约束)
5.1.4 Synonymous Z-score
属性
定义 同义变异观察-预期偏差的 Z 分数
用途 质控指标——同义变异应接近中性 (Z ≈ 0),显著偏离提示技术伪影

§5.2 约束指标计算流程

import hail as hl

# === 步骤 1:构建突变率模型 ===
# 对每个 3-mer 上下文计算突变率
# 按甲基化水平分层 (low / medium / high)
# 基于覆盖度校正

# === 步骤 2:计算每个转录本的预期变异数 ===
# 对每个蛋白编码转录本 (MANE Select):
#   对每个编码位点:
#     预期变异数 = 该 3-mer 上下文的突变率 × 覆盖度校正因子
#   预期 LoF 变异数 = sum(所有可能导致 LoF 的变异的预期数)
#   预期 Missense 变异数 = sum(所有可能导致 Missense 的变异的预期数)
#   预期 Synonymous 变异数 = sum(所有可能导致 Synonymous 的变异的预期数)

# === 步骤 3:计算观察/预期比值 ===
# oe = observed_LoF / expected_LoF
# LOEUF = 90% 置信区间上界 (基于泊松分布)

# === Hail 实现示例 ===
conevent-blocked= get_gnomad_release(dataset="constraint", version="4.1")

# 筛选高度约束基因
highly_conevent-blocked= constraint_ht.filter(
    constraint_ht.lof.oe_upper < 0.45  # LOEUF < 0.45
)

# 按约束程度排序
highly_conevent-blocked= highly_constrained.order_by(
    hl.asc(highly_constrained.lof.oe_upper)
)

print(f"高度约束基因数 (LOEUF < 0.45): {highly_constrained.count()}")

§5.2.1 v2 vs v4 约束指标差异

gnomAD v4.1 的约束指标相比 v2 有重要更新,使用时需注意差异:

指标 gnomAD v2.1.1 gnomAD v4.1 说明
样本量 125,748 外显子组 730,947 外显子组 5.8 倍增长
pLI ≥ 0.9 3,230 基因 3,060 基因 数量下降——更多基因被归入低约束类别
LOEUF 阈值 < 0.35 (2,968 基因) < 0.45 (2,556 基因) 阈值放宽但约束基因数下降——更大样本量提高了检测功效
预期 LoF/基因 中位 13.2 中位 17.9 更多预期变异 = 更高统计功效
功效充足基因 62.8% (>10 预期 LoF) 72.1% (>10 预期 LoF) ~30% 基因仍功效不足
转录本来源 GENCODE v19 (hg19) MANE Select v1.0 (hg38) v4 使用临床标准转录本

临床过渡建议:从 v2 迁移到 v4 时,基因的约束分类可能发生变化。建议同时检查 v2 和 v4 的约束指标,对分类发生变化的基因进行个案评估。

§5.3 ACMG/AMP 变异分类中的 gnomAD 使用

import hail as hl

# === 加载 gnomAD v4.1 外显子组 ===
ht = get_gnomad_release(dataset="variant", data_type="exomes", version="4.1")

# === ACMG BA1: 等位基因频率 > 5% → 良性 ===
ba1_variants = ht.filter(
    hl.max(ht.freq_expr) > 0.05  # 任一群体 AF > 5%
)

# === ACMG BS1: 群体最大过滤等位基因频率 > 疾病 AF_max ===
# grpmax FAF = max(group_freq_95CI_lower) across 9 ancestry groups
# 需要与基因特异的疾病 AF_max 比较
bs1_threshold = 3.3e-5  # 示例:某 AD 疾病 AF_max

bs1_variants = ht.filter(
    ht.grpmax_faft > bs1_threshold
)

# === ACMG PM2: 变异在 gnomAD 中不存在或极低频 ===
# allele count = 0 或 allele frequency < 0.0001
pm2_variants = ht.filter(
    (ht.allele_count == 0) |
    (ht.freq_expr < 0.0001)
)

# === ACMG BS2: 在健康人中以纯合状态观察到 ===
# 对于 AD 疾病,纯合子存在不支持致病性
bs2_variants = ht.filter(
    ht.homozygote_count > 0  # 在 gnomAD 中存在纯合子
)

§5.4 群体等位基因频率查询

import hail as hl

# === 加载 gnomAD v4.1 外显子组 ===
ht = get_gnomad_release(dataset="variant", data_type="exomes", version="4.1")

# === 查询特定基因所有变异的群体分层频率 ===
brca1_variants = ht.filter(
    ht.gene_symbol == "BRCA1"
)

# 提取各群体频率
brca1_freq = brca1_variants.select(
    chrom=brca1_variants.locus.contig,
    pos=brca1_variants.locus.position,
    ref=brca1_variants.alleles[0],
    alt=brca1_variants.alleles[1],
    global_af=brca1_variants.freq[0].AF,  # 全局频率
    nfe_af=brca1_variants.freq[1].AF,      # 非芬兰欧洲
    afr_af=brca1_variants.freq[2].AF,      # 非洲
    asj_af=brca1_variants.freq[3].AF,      # 德系犹太人
    eas_af=brca1_variants.freq[4].AF,      # 东亚
    sas_af=brca1_variants.freq[5].AF,      # 南亚
    amr_af=brca1_variants.freq[6].AF,      # 混血美洲
    fin_af=brca1_variants.freq[7].AF,      # 芬兰
    grpmax=brca1_variants.grpmax_faft,     # 群体最大 FAF
    conevent-blocked=brca1_variants.consequence,
    ac=brca1_variants.allele_count,
    an=brca1_variants.allele_number
)

brca1_freq.export("brca1_gnomad_v4_freq.tsv")

§5.5 变异注释管道

import hail as hl

# === 用 gnomAD 注释自定义 VCF ===
# 场景:临床实验室对一批患者 VCF 进行 gnomAD 频率注释

# 1. 加载患者 VCF
patient_mt = hl.import_vcf("patient_variants.vcf.gz", reference_genome="GRCh38")

# 2. 加载 gnomAD v4.1 位点表
gnomad_ht = get_gnomad_release(dataset="variant", data_type="exomes", version="4.1")

# 3. 注释
annotated_mt = patient_mt.annotate_rows(
    gnomad_v4=gnomad_ht[patient_mt.locus, patient_mt.alleles],
)

# 4. 提取关键注释
result = annotated_mt.rows().select(
    locus=annotated_mt.locus,
    alleles=annotated_mt.alleles,
    gnomad_global_af=annotated_mt.gnomad_v4.freq[0].AF,
    gnomad_grpmax_faf=annotated_mt.gnomad_v4.grpmax_faft,
    gnomad_ac=annotated_mt.gnomad_v4.allele_count,
    gnomad_an=annotated_mt.gnomad_v4.allele_number,
    gnomad_hom=annotated_mt.gnomad_v4.homozygote_count,
    gnomad_conevent-blocked=annotated_mt.gnomad_v4.consequence,
    gnomad_loftee_hc=annotated_mt.gnomad_v4.lof_filter,  # HC or LC
)

# 5. 导出
result.export("patient_variants_gnomad_annotated.tsv")

§5.6 结构变异分析

import hail as hl

# === 加载 gnomAD v4 SV 数据 ===
sv_ht = hl.import_vcf(
    "gs://gcp-public-datagnomad/release/4.1/sv/gnomad.v4.1.sv.sites.vcf.gz",
    reference_genome="GRCh38"
)

# === 按 SV 类型统计 ===
sv_types = sv_ht.group_by(sv_type=sv_ht.info.SVTYPE).aggregate(
    count=hl.agg.count(),
    mean_af=hl.agg.mean(sv_ht.info.AF)
)

sv_types.show()

# === 筛选罕见缺失变异 ===
rare_dels = sv_ht.filter(
    (sv_ht.info.SVTYPE == "DEL") &amp;
    (sv_ht.info.AF < 0.001) &amp;
    (sv_ht.info.SVLEN > 1000)  # > 1kb 缺失
)

§5.7 De Novo 变异分析

import hail as hl
import pandas as pd

# === 加载 gnomAD v4.1 de novo 变异 ===
dnv_df = pd.read_csv(
    "gs://gcp-public-datagnomad/release/4.1/de_novo/gnomad.v4.1.de_novo.tsv",
    sep="\t"
)

# === 分析 de novo 变异类型分布 ===
print("De novo 变异后果分布:")
print(dnv_df[''''''''consequence''''''''].value_counts())

# === 与已知致病基因交叉 ===
# 加载 ClinVar 致病变异
clinvar_pathogenic = pd.read_csv("clinvar_pathogenic.tsv", sep="\t")

# 检查 gnomAD de novo 变异中是否有 ClinVar 致病变异
overlap = dnv_df.merge(
    clinvar_pathogenic,
    on=[''''''''chrom'''''''', ''''''''pos'''''''', ''''''''ref'''''''', ''''''''alt''''''''],
    how=''''''''inner''''''''
)
print(f"与 ClinVar 致病变异重叠的 de novo: {len(overlap)}")

§5.8 计算资源需求

任务 推荐配置 预计时间
查询单个基因/变异 本地 (8GB RAM) <1 分钟
约束指标表分析 本地 (8GB RAM) <5 分钟
全基因组注释 Dataproc 4×n1-highmem-8 ~2 小时
全外显子组频率提取 Dataproc 4×n1-highmem-8 ~30 分钟
约束指标重算 Dataproc 8×n1-highmem-16 ~4 小时
SV 全表查询 Dataproc 2×n1-highmem-8 ~10 分钟

§6 AI/ML 应用

§6.1 AlphaMissense——变异致病性预测 SOTA

AlphaMissense (Google DeepMind, 2023) 是 gnomAD 在 AI 领域最重要的下游应用:

属性
架构 AlphaFold 微调 + 蛋白语言模型
训练数据 gnomAD 高频变异 → 标签"良性";gnomAD 中完全缺失的变异 → 标签"可能致病";灵长类常见变异 → “良性”
输出 0–1 连续致病性分数 + 分类阈值(<0.34 良性, >0.564 致病, 中间为不确定)
覆盖率 71M 所有可能的错义变异中 89% 被分类为良性/致病
性能 ClinVar 致病性分类 AUROC 0.941 (vs CADD 0.899, REVEL 0.886)
论文 Cheng et al., Science 381:eadg7492 (2023)

关键创新:AlphaMissense 不直接使用 ClinVar 标签训练——它利用 gnomAD 的人群频率作为隐式标签(高频 = 良性,缺失 = 可能致病),避免了 ClinVar 的标注偏差(欧洲血统过代表、疾病类型不均)。这种"无监督 + 群体频率"训练范式为变异致病性预测提供了新范式。

# === AlphaMissense 预测查询 ===
# AlphaMissense 预测结果已公开下载
# 格式:HGVS 蛋白变异 → 致病性分数 (0-1)

import pandas as pd

# 加载 AlphaMissense 预测(按蛋白分文件)
am_predictionevent-blocked= pd.read_csv(
    "gs://dm_alphamissense/AlphaMissense_hg38.tsv.gz",
    sep="\t",
    comment="#"
)

# 查询 BRCA1 所有错义变异的预测
brca1_am = am_predictions[am_predictions[''''''''protein''''''''] == ''''''''BRCA1'''''''']
print(f"BRCA1 AlphaMissense 预测数: {len(brca1_am)}")
print(f"致病性分布: {brca1_am[''''''''am_pathogenicity''''''''].describe()}")

§6.2 ESM 蛋白语言模型

Meta AI 的 ESM (Evolutionary Scale Modeling) 系列使用 gnomAD 相关数据评估变异效应:

模型 参数量 gnomAD 使用方式 论文
ESM-1v 650M gnomAD 变异频率用于验证变异效应预测 Meier et al., Nature Communications 2021
ESM-2 15B UniRef 蛋白序列预训练(包含 gnomAD 变异所在蛋白) Lin et al., Science 2023
ESM-1b 650M 变异效应零样本预测,与 gnomAD 频率相关 Brandes et al., Nature Methods 2023
# === ESM-2 变异效应预测 ===
import torch
from esm import pretrained

# 加载 ESM-2 模型
model, alphabet = pretrained.esm2_t33_650M_UR50D()
batch_conevent-blocked= alphabet.get_batch_converter()
model.eval()

# 计算 BRCA1 蛋白某位点变异的 log-likelihood ratio
def predict_variant_effect(sequence, position, ref_aa, alt_aa):
    """使用 ESM-2 零样本预测变异效应"""
    # 原始序列
    data = [("protein", sequence)]
    _, _, batch_tokens = batch_converter(data)
    
    with torch.no_grad():
        logits = model(batch_tokens)["logits"]
    
    # 计算 ref vs alt 的 logit 差
    ref_logit = logits[0, position, alphabet.get_idx(ref_aa)]
    alt_logit = logits[0, position, alphabet.get_idx(alt_aa)]
    
    return (alt_logit - ref_logit).item()

# 示例
brca1_seq = "MDLSALRV..."  # BRCA1 蛋白序列
score = predict_variant_effect(brca1_seq, 1699, ''''''''A'''''''', ''''''''G'''''''')
print(f"ESM 变异效应分数: {score}")

§6.3 PrimateAI 2.0

Illumina 的 PrimateAI 2.0 使用 6 种非人灵长类常见变异 + gnomAD 频率训练深度神经网络:

属性
架构 3D CNN,输入蛋白结构和序列特征
训练策略 灵长类常见变异 → 良性;gnomAD 极低频变异 → 可能致病
应用 Illumina TruSight Software Suite 集成
性能 ClinVar AUROC ~0.93

§6.4 药物靶点发现管道

import hail as hl
import pandas as pd

# === 从 gnomAD 筛选药物靶点候选基因 ===
# 策略:高度约束基因 + 已知 LoF 携带者表型数据

# 1. 加载约束指标
conevent-blocked= get_gnomad_release(dataset="constraint", version="4.1")

# 2. 筛选极度 LoF 不耐受基因(可能不是好的药物靶点——LoF 有害)
#    反而,LoF 可耐受基因中 LoF 携带者有保护性表型的是理想靶点
tolerant_genes = constraint_ht.filter(
    constraint_ht.lof.oe_upper > 0.8  # LoF 可耐受
)

# 3. 加载 OMIM/GTEx 表达数据交叉
# (需要外部数据源)
# 筛选在特定组织高表达且 LoF 可耐受的基因 → 候选靶点

# 4. 反向筛选:极度约束基因 → 不可成药靶点(LoF 有害)
untenable_targets = constraint_ht.filter(
    constraint_ht.lof.oe_upper < 0.2  # 极度约束
)
print(f"极度约束基因数 (LoF 有害,药物靶点风险高): {untenable_targets.count()}")

§6.5 携带者筛查频率参考

import hail as hl

# === 常染色体隐性遗传病携带者频率计算 ===
# 基于 gnomAD v4.1 外显子组数据

ht = get_gnomad_release(dataset="variant", data_type="exomes", version="4.1")

# 定义致病变异集(来自 ClinVar P/LP 变异)
# 对于每个 AR 疾病基因,计算群体携带者频率

def compute_carrier_frequency(gene_symbol, ancestry="nfe"):
    """计算特定基因在特定群体中的携带者频率"""
    
    gene_variants = ht.filter(
        (ht.gene_symbol == gene_symbol) &amp;
        (ht.clinical_significance == "pathogenic") |  # ClinVar P/LP
        (ht.clinical_significance == "likely_pathogenic")
    )
    
    # 群体索引
    ancestry_map = {
        "afr": 1, "amr": 2, "asj": 3, "eas": 4,
        "fin": 5, "nfe": 6, "sas": 7, "mid": 8, "ami": 9
    }
    
    # 计算 allele count 和 allele number
    ac = gene_variants.aggregate(
        hl.agg.sum(gene_variants.freq[ancestry_map[ancestry]].AC)
    )
    an = gene_variants.aggregate(
        hl.agg.sum(gene_variants.freq[ancestry_map[ancestry]].AN)
    )
    
    # 携带者频率 ≈ 2q (q = allele frequency, Hardy-Weinberg 近似)
    allele_freq = ac / an if an > 0 else 0
    carrier_freq = 2 * allele_freq * (1 - allele_freq)
    
    return {
        "gene": gene_symbol,
        "ancestry": ancestry,
        "allele_count": ac,
        "allele_number": an,
        "allele_frequency": allele_freq,
        "carrier_frequency": carrier_freq,
        "carrier_rate": f"1 in {int(1/carrier_freq)}" if carrier_freq > 0 else "N/A"
    }

# 示例:CFTR 基因 (囊性纤维化) 携带者频率
result = compute_carrier_frequency("CFTR", "nfe")
print(f"CFTR 携带者频率 (nfe): {result}")

§6.6 基因约束指标在 AI 中的应用

import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.metrics import roc_auc_score
import xgboost as xgb

# === 使用 gnomAD 约束指标构建致病基因预测模型 ===

# 1. 加载约束指标
conevent-blocked= pd.read_csv(
    "gs://gcp-public-datagnomad/release/4.1/constraint/gnomad.v4.1.constraint_metrics.tsv",
    sep="\t"
)

# 2. 特征工程
features = constraint_df[[
    ''''''''lof_oe_upper'''''''',          # LOEUF
    ''''''''lof_pLI'''''''',               # pLI
    ''''''''lof_oe'''''''',                # oe ratio
    ''''''''lof_obs'''''''',               # observed LoF count
    ''''''''lof_exp'''''''',               # expected LoF count
    ''''''''mis_z'''''''',                 # Missense Z-score
    ''''''''syn_z'''''''',                 # Synonymous Z-score
    ''''''''lof_obs'''''''',               # observed count
]].fillna(0)

# 3. 标签:已知致病基因 (OMIM) vs 非致病基因
# (需要外部 OMIM 数据)
labels = (constraint_df[''''''''gene_symbol''''''''].isin(omim_disease_genes)).astype(int)

# 4. 训练 XGBoost 分类器
X_train, X_test, y_train, y_test = train_test_split(
    features, labels, test_size=0.2, random_state=42
)

model = xgb.XGBClassifier(
    n_estimators=200,
    max_depth=6,
    learning_rate=0.1
)
model.fit(X_train, y_train)

# 5. 评估
y_pred = model.predict_proba(X_test)[:, 1]
auc = roc_auc_score(y_test, y_pred)
print(f"致病基因预测 AUROC: {auc:.4f}")

# 6. 特征重要性
importance = pd.DataFrame({
    ''''''''feature'''''''': features.columns,
    ''''''''importance'''''''': model.feature_importances_
}).sort_values(''''''''importance'''''''', ascending=False)
print(importance)

§6.7 Hail 分布式变异数据处理

import hail as hl

# === 大规模变异频率分析管道 ===
# 场景:计算自定义基因集的所有变异频率汇总

# 1. 初始化 Hail
hl.init()

# 2. 加载 gnomAD v4.1 外显子组
ht = get_gnomad_release(dataset="variant", data_type="exomes", version="4.1")

# 3. 定义基因集(示例:DNA 修复基因)
dna_repair_genes = [
    "BRCA1", "BRCA2", "ATM", "ATR", "CHEK1", "CHEK2",
    "RAD51", "RAD52", "RAD54L", "PALB2", "BRIP1",
    "MLH1", "MSH2", "MSH6", "PMS2", "POLD1", "POLE"
]

# 4. 过滤变异
repair_variants = ht.filter(
    hl.array(dna_repair_genes).contains(ht.gene_symbol)
)

# 5. 按 VEP 后果分组统计
conevent-blocked= repair_variants.group_by(
    gene=repair_variants.gene_symbol,
    conevent-blocked=repair_variants.consequence
).aggregate(
    variant_count=hl.agg.count(),
    mean_af=hl.agg.mean(repair_variants.freq[0].AF),
    max_af=hl.agg.max(repair_variants.freq[0].AF),
    max_grpmax_faf=hl.agg.max(repair_variants.grpmax_faft)
)

# 6. 导出结果
consequence_summary.export("dna_repair_gene_variant_summary.tsv")

§7 已知坑点

§7.0 隐私与伦理考量

gnomAD 虽然仅发布聚合频率数据(不包含个体基因型),但大规模频率数据库仍面临隐私挑战:

风险 描述 gnomAD 的缓解措施
等位基因频率反演 理论上可从聚合频率推断小群体中特定个体的基因型 排除样本量 <20 的小群体子集;grpmax FAF 仅显示 95% CI 下界
身份推断 罕致病变异的频率可帮助推断某群体中是否有特定家族参与 不发布样本级元数据;群体标签仅到大陆级
祖先可链接性 罕见变异组合可链接到公开的个体基因组 限制 allele count < 10 的变异展示个体级信息
gRNA 指纹 gnomAD 中缺失的位点可能是致病性的,可用于个体基因组注释 所有数据 CC0 发布,不限制下游使用

伦理审查:gnomAD 各参与机构的原始数据受各自 IRB 审批控制。gnomAD 仅发布聚合频率,不提供样本级基因型。如需样本级数据(含 phenotype),需通过 dbGaP / EGA 申请对应研究项目的受控访问权限。

§7.1 v2 vs v4 参考基因组差异

坑点 #1:gnomAD v2 基于 GRCh37/hg19,v3/v4 基于 GRCh38/hg38。如果临床 pipeline 仍在 GRCh37 上,不能直接使用 v4 数据。

解决方案

  • 使用 gnomAD v2 liftover 数据(GRCh37 → GRCh38 lift 后的结果回映到 GRCh37)
  • 或使用 UCSC LiftOver 工具自行转换坐标
  • 检查 liftover 后的变异是否仍在原基因内(特别是 indel 跨外显子边界时)

§7.2 "健康人"假设的局限

坑点 #2:gnomAD 排除了已知严重儿科疾病患者,但可能包含成人常见疾病患者(心血管、糖尿病、肿瘤等)。将 gnomAD 视为严格的"健康对照"可能导致频率高估。

解决方案

  • 对于高外显率成年发病疾病(如遗传性乳腺癌),使用更严格的频率阈值
  • 考虑使用 gnomAD v2 的 subsets(non-cancer, non-neuro, controls-only),但注意 v4 已取消 subsets
  • 参考原文中的"filtering allele frequency"而非原始 AF

§7.3 群体过代表偏差

坑点 #3:v4.1 中 82% 样本为非芬兰欧洲人 (nfe),其中 416,555 人来自 UK Biobank。全局频率高度偏向欧洲人群,对非欧洲群体的变异评估可能功效不足。

解决方案

  • 始终查询群体特异频率,而非仅看全局频率
  • 对于非欧洲患者,检查相关群体的 allele number (AN) 是否足够大(建议 AN > 10,000)
  • 对于 mid (中东) 和 ami (阿米什) 群体,样本量极小(<1,000),频率估计置信区间很宽

§7.4 v4 取消 subsets

坑点 #4:gnomAD v2 提供 non-cancer / non-neuro / controls-only / non-TOPMed 四种 subset,v4 取消了这些 subset。

原因:(1) 研究特定疾病(如癌症、神经疾病)的盛行率不高,无需通过 subset 比对;(2) 新加入的 UK Biobank 等队列样本缺乏完整 phenotype 数据,无法明确区分疾病状态。

解决方案

  • 使用 gnomAD metadata(需通过申请获取样本级 phenotype)自行过滤
  • 或继续使用 v2 subset 作为补充
  • ACMG 新指南建议直接使用 grpmax FAF 而非 subset 频率

§7.5 LoFTEE 高置信度过滤可能过严

坑点 #5:LoFTEE 的 HC (high confidence) 过滤标准较严——排除最后 exon 的最后 5%(避免 NMD 逃逸)。但某些基因的 C 端截断确实导致功能丧失,被 LoFTEE 标记为 LC (low confidence) 后从约束指标计算中排除。

解决方案

  • 对于临床变异解读,同时查看 HC 和 LC 变异
  • 对于约束指标分析,使用 HC 变异(确保统计一致性)
  • 关注 gnomAD 博客上关于 LoFTEE 局限性的讨论

§7.6 allele number (AN) 不可靠区域

坑点 #6:外显子组覆盖不均匀,某些区域(如 UTR、非编码区、低 mappability 区域)的 AN 远低于总体 AN。在这些区域,“未在 gnomAD 中观察到"不等于"该变异不存在于人群中”。

解决方案

  • 始终检查变异所在位点的 AN,而非默认使用总体 AN
  • 如果 AN < 10,000,对 PM2 证据持谨慎态度
  • 使用 gnomAD 覆盖度数据检查位点质量

§7.7 多等位基因位点

坑点 #7:gnomAD 中某些位点有多个 alt allele(多等位基因),VCF 中的 AC/AF 字段可能需要分别查看每个 allele。

解决方案

  • 使用 Hail 的 split_multi 功能拆分多等位基因位点
  • 在浏览器中查看每个 allele 的独立频率

§7.8 SV 质量梯度

坑点 #8:gnomAD v4 SV 数据包含不同质量级别的变异,且 SV 检出在不同基因组区域灵敏度不同(端粒、着丝粒附近假阳性率高)。

解决方案

  • 使用 SVTYPE + SVLEN + AF 综合过滤
  • 检查 SV 的 quality score (QUAL) 和 PASS filter 状态
  • 对于临床 SV 解读,结合 IGV 可视化验证

§7.9 三大基因组版本共存

坑点 #9:gnomAD 同时维护 v2 (GRCh37)、v3 (GRCh38 genome-only)、v4 (GRCh38 exome+genome) 三个版本。不同版本的数据结构和字段命名可能不同。

解决方案

  • 明确记录使用的版本号
  • 使用 gnomad-toolbox 的版本管理功能:
    from gnomad_toolbox.load_data import set_default_data
    set_default_data(data_type="exomes", version="4.1")
    

§7.10 UK Biobank 主导效应

坑点 #10:v4.1 中 416,555 人(51.6%)来自 UK Biobank。UKB 人群特征(英国白人、50–80 岁、相对健康志愿者)可能引入选择偏差,影响频率估计的代表性。

解决方案

  • 比较包含/排除 UKB 的频率差异(gnomAD 提供 non-UKB 频率字段)
  • 对于英国人群特异性变异,注意 UKB 可能拉高频率
  • 对于非欧洲群体分析,UKB 影响较小

§7.11 mappability 与假阳性

坑点 #11:在重复序列、段重复 (segmental duplication) 和假基因区域,短读测序比对错误率高,导致假阳性变异。这些区域在 gnomAD 中可能被标记但未完全排除。

解决方案

  • 使用 UCSC Genome Browser 的 mappability track 过滤低 mappability 区域
  • 对 PMS2、STRC 等含假基因的基因特别谨慎
  • 参考 ClinGen 低 mappability 基因列表

§7.12 约束指标的基因长度偏差

坑点 #12:约 30% 的编码基因在 gnomAD v4.1 样本量下仍统计功效不足(主要是短基因),其 LOEUF 置信区间过宽,无法可靠判断是否约束。

解决方案

  • 始终查看 LOEUF 的 90% 置信区间,而非仅看点估计

  • 对于预期 LoF < 10 的基因,约束指标不可靠

  • 关注 gnomAD 团队关于"underpowered genes"的标注

§8 SOTA 对比与生态

§8.1 人类变异频率数据库横向对比

特性 gnomAD v4.1 1000 Genomes (1KG) UK Biobank WES TOPMed All of Us
样本量 807,162 3,202 (30X) 500,000 180,000+ 245,394+
数据类型 外显子组+基因组 全基因组 外显子组 全基因组 全基因组
参考基因组 GRCh38 GRCh38 GRCh38 GRCh38 GRCh38
祖先多样性 9 群体(但 nfe 占 82%) 26 群体(最均匀) 英国白人为主 含非裔/西班牙裔 ~50% 非欧洲
约束指标 ✅ LOEUF/pLI/Z
SV 数据 ✅ GATK-SV
CNV 数据 ✅ GATK-gCNV
De novo ✅ 1,517 trios
表型数据 ❌(无样本级表型) ✅(深度表型) ✅(部分) ✅(EHR 链接)
许可 CC0 EGA/受控 受控 dbGaP 受控 注册开放
AI 就绪 ★★★★★ ★★★ ★★★ ★★ ★★★
引用数 15,000+ 10,000+ 5,000+ 3,000+ 1,000+

选择建议

  • 变异频率参考 + 约束指标 → gnomAD(首选)
  • 非编码区深度分析 + 群体均匀 → 1000 Genomes(参考面板)
  • 基因型-表型关联 → UK Biobank / All of Us(含表型数据)
  • 非裔/西班牙裔变异频率 → TOPMed(含更多少数群体)
  • EHR 链接 + 祖先多样性 → All of Us

§8.2 变异致病性预测工具对比

工具 训练数据 输出 AUROC (ClinVar) 与 gnomAD 关系
AlphaMissense gnomAD 频率 + AlphaFold 结构 0–1 分数 0.941 核心训练数据
ESM-1v/2 UniRef 序列(含 gnomAD 变异蛋白) Log-likelihood ratio ~0.90 变异所在蛋白
PrimateAI 2.0 灵长类变异 + gnomAD 频率 0–1 分数 ~0.93 频率标签
CADD 多基因组特征 Phred 分数 0.899 使用 gnomAF 作为特征
REVEL ClinVar + 多工具集成 0–1 分数 0.886 间接
SIFT 跨物种保守性 Binary ~0.80
PolyPhen-2 蛋白结构 + 序列 Binary ~0.85
** EVE** MSA 进化模型 0–1 分数 ~0.91
BayesDel ClinVar + 频率 0–1 分数 ~0.89 使用 gnomAD AF

§8.3 gnomAD 在 AI 生态系统中的位置

                    gnomAD 在 AI 变异解读生态中的位置
 ┌─────────────────────────────────────────────────────────────────┐
 │                                                                 │
 │  ┌─────────────┐    频率标签    ┌─────────────────┐            │
 │  │   gnomAD    │──────────────→│  AlphaMissense  │            │
 │  │  v4.1       │    频率验证    │  (DeepMind)     │            │
 │  │  807K 人    │←─────────────│  71M 变异预测   │            │
 │  └──────┬──────┘               └────────┬────────┘            │
 │         │                                │                      │
 │    约束指标                          预测分数                    │
 │         │                                │                      │
 │  ┌──────▼──────┐               ┌────────▼────────┐            │
 │  │  LOEUF/pLI  │               │ ClinVar 变异    │            │
 │  │  基因约束   │               │  分类辅助       │            │
 │  └──────┬──────┘               └─────────────────┘            │
 │         │                                                     │
 │    基因筛选                                                    │
 │         │                                                     │
 │  ┌──────▼──────┐    蛋白序列    ┌─────────────────┐            │
 │  │  药物靶点   │←─────────────│   ESM-2 (Meta)  │            │
 │  │  发现       │    变异效应    │  蛋白语言模型   │            │
 │  └─────────────┘               └─────────────────┘            │
 │                                                                 │
 │  ┌─────────────┐               ┌─────────────────┐            │
 │  │  PrimateAI  │    频率标签    │  ACMG/AMP       │            │
 │  │  (Illumina) │←─────────────│  变异分类指南   │            │
 │  └─────────────┘               └─────────────────┘            │
 │                                                                 │
 └─────────────────────────────────────────────────────────────────┘

§8.4 关键衍生项目

项目 描述 与 gnomAD 的关系
gnomAD-SV gnomAD 结构变异数据子集 v4 SV 数据 (GATK-SV)
gnomAD-CNV gnomAD 罕见编码 CNV v4 CNV 数据 (GATK-gCNV)
ClinGen 临床基因组资源 使用 gnomAD 频率设置基因-疾病关联的频率阈值
ClinVar 临床变异数据库 gnomAD 频率辅助 ClinVar 变异分类
AlphaMissense 变异致病性预测 gnomAD 频率作为训练标签
gnomAD Browser 在线变异查询 gnomAD 官方浏览器
gnomad-toolbox Python 工具包 简化 gnomAD 数据加载和分析
gnomad_methods Hail 工具库 gnomAD 团队维护的 Hail 分析工具
gnomad_qc QC 管道代码 gnomAD v4 QC 全流程开源代码
LOFTEE LoF 变异注释器 gnomAD 团队开发的 VEP 插件
Gnocchi 非编码约束指标 基于 gnomAD v3 基因组数据的非编码约束度量

§8.5 gnomAD 论文影响力

论文 期刊 年份 引用数 核心贡献
Lek et al. Nature 536:285 2016 8,000+ ExAC v1,pLI 指标首发
Karczewski et al. Nature 581:434 2020 15,000+ gnomAD v2,LOEUF 指标
Collins et al. Science 366:1345 2019 1,500+ gnomAD SV v2
Chen et al. Nature 625:92 2024 2,000+ gnomAD v3 基因组,Gnocchi 非编码约束
Babadi et al. Nat Genet 55:1619 2023 300+ GATK-gCNV,外显子组 CNV 检出
Cheng et al. (AlphaMissense) Science 381 2023 1,000+ gnomAD 训练的变异致病性预测

§9 资源索引

§9.1 官方资源

资源 URL
gnomAD 浏览器 https://gnomad.broadinstitute.org/
下载页面 https://gnomad.broadinstitute.org/downloads
博客 https://gnomad.broadinstitute.org/news/
论坛 https://discuss.gnomad.broadinstitute.org/
帮助文档 https://gnomad.broadinstitute.org/help/

§9.2 代码仓库

仓库 URL 描述
gnomad-toolbox https://github.com/broadinstitute/gnomad-toolbox Python 数据加载/过滤工具包
gnomad_methods https://github.com/broadinstitute/gnomad_methods Hail 分析工具库
gnomad_qc https://github.com/broadinstitute/gnomad_qc QC 管道代码(v4/v5)
Hail https://github.com/hail-is/hail 分布式基因组数据分析框架
GATK-SV https://github.com/broadinstitute/gatk-sv 结构变异检出管道
GATK-gCNV https://github.com/broadinstitute/gatk 外显子组 CNV 检出
LoFTEE https://github.com/konradjk/loftee LoF 变异注释 VEP 插件

§9.3 云端数据

平台 路径
Google Cloud gs://gcp-public-datagnomad/release/
AWS s3://gnomad-public-us-east-1/release/
Azure https://azureopendatastorage.blob.core.windows.net/gnomad/
BigQuery bigquery-public-data.gnomad (需 GCP 项目)
Terra https://app.terra.bio/ (gnomAD demo workspace)

§9.3.1 教程与文档

资源 URL 描述
gnomAD Getting Started https://broadinstitute.github.io/gnomad_methods/getting_started.html Hail + gnomAD 快速入门
gnomad-toolbox Notebooks https://github.com/broadinstitute/gnomad-toolbox/tree/main/gnomad_toolbox/notebooks 交互式教程(数据加载、过滤、分析)
DeepWiki gnomad_qc https://deepwiki.com/broadinstitute/gnomad_qc v4 QC 管道代码详解
DeepWiki gnomad-toolbox https://deepwiki.com/broadinstitute/gnomad-toolbox 工具包 API 文档
Hail 文档 https://hail.is/docs/0.2/ Hail 框架完整文档
gnomAD 论坛精选 https://discuss.gnomad.broadinstitute.org/ 问答社区(频率查询、版本迁移、约束指标)

§9.4 外部关联资源

资源 URL 与 gnomAD 关系
ClinVar https://www.ncbi.nlm.nih.gov/clinvar/ 临床变异分类,使用 gnomAD 频率
ClinGen https://clinicalgenome.org/ 基因-疾病有效性,使用 gnomAD 频率阈值
OMIM https://omim.org/ 遗传疾病数据库,约束指标交叉验证
AlphaMissense https://alphamissense.hegelab.org/ gnomAD 训练的变异预测
UniProt https://www.uniprot.org/ 蛋白功能,与 gnomAD 变异注释互补
GTEx https://gtexportal.org/ 组织表达 (pext 指标数据来源)
1000 Genomes https://www.internationalgenome.org/ 参考面板,gnomAD 含 1KG 子集
UK Biobank https://www.ukbiobank.ac.uk/ gnomAD v4 最大来源 (416K 个体)
All of Us https://www.researchallofus.org/ 美国多样性基因组计划

§9.5 关键论文

  1. Karczewski KJ, Francioli LC, Tiao G, et al. “The mutational constraint spectrum quantified from variation in 141,456 humans.” Nature 581:434–443, 2020. doi:10.1038/s41586-020-2308-7
  2. Lek M, Karczewski KJ, Minikel EV, et al. “Analysis of protein-coding genetic variation in 60,706 humans.” Nature 536:285–291, 2016. doi:10.1038/nature19057
  3. Chen S, Francioli L, Goodrich JK, et al. “A genomic mutational constraint map using variation in 76,156 human genomes.” Nature 625:92–100, 2024. doi:10.1038/s41586-023-06045-0
  4. Collins RL, Brand H, Karczewski KJ, et al. “A structural variation reference for medical and population genetics.” Nature 581:444–451, 2020. doi:10.1038/s41586-020-2287-8
  5. Babadi M, et al. “GATK-gCNV enables the discovery of rare copy number variants from exome sequencing data.” Nature Genetics 55:1619–1627, 2023.
  6. Cheng J, Novati G, Pan J, et al. “Accurate proteome-wide missense variant effect prediction with AlphaMissense.” Science 381:eadg7492, 2023. doi:10.1126/science.adg7492
  7. Richards S, Aziz N, Bale S, et al. “Standards and guidelines for the interpretation of sequence variants.” Genetics in Medicine 17:405–424, 2015. doi:10.1038/gim.2015.30

§10 数据集声明卡

§10.1 基本信息

属性
数据集名称 gnomAD (Genome Aggregation Database)
版本 v4.1.1 (2026-03)
发布机构 Broad Institute of MIT and Harvard
许可 CC0 1.0 Universal (Public Domain)
总样本数 807,162 (730,947 exomes + 76,215 genomes)
变异总数 >1,000,000,000
参考基因组 GRCh38/hg38 (v3/v4) / GRCh37/hg19 (v2)
数据格式 VCF / Hail Table / TSV / BED / BigWig

§10.2 数据采集

属性
来源 60+ 国际研究项目(含 UK Biobank, DiscovEHR, CCDG, TOPMed 等)
排除标准 已知严重儿科疾病患者及一级亲属
保留标准 成人常见疾病患者保留(非"健康人"数据库)
测序平台 Illumina 多种平台,20+ 外显子捕获试剂盒
IRB 各参与机构独立 IRB 审批

§10.3 数据质量

维度 评估
覆盖度 外显子组中位深度 ~50X(区间级 QC 确保可靠区域)
变异检出 GATK Best Practices + VQSR,严格 QC 过滤
祖先覆盖 9 群体但 nfe 占 82%,非欧洲群体功效有限
假阳性率 LoFTEE HC 变异假阳性率 <5%;SV 精度 >90% (≥2 exon CNV)
版本稳定性 v2/v3/v4 并行维护,版本间数据结构有差异

§10.4 人工校验表

校验项 状态
Nature 2020 (v2) 论文确认
Nature 2024 (v3) 论文确认
CC0 许可确认
807,162 人 v4.1 确认
>10 亿变异确认
15,000+ 引用确认
AlphaMissense 训练源确认
150K+ 周访问量确认
LOEUF/pLI 指标确认
9 种遗传祖先群体确认
ACMG/AMP 分类标准确认
GATK-SV / GATK-gCNV 确认
De novo 变异 (1,517 trios) 确认
三朵云下载 (GCP/AWS/Azure) 确认
Hail/gnomad-toolbox 确认
§P 9 字段全
@graph MedicalWebPage+Dataset
H1 标题
§0 声明
§1–§10 全章节
§C 校验表
frontmatter 完整
JSON-LD 单块
published 状态
导航锚点
中英文排版
无占位符残留
无未定稿状态泄露
返回 AI Ready 数据集