PrimeKG案例研究实战:用知识图谱挖掘自闭症谱系障碍的基因-疾病关联
【免费下载链接】PrimeKGPrecision Medicine Knowledge Graph (PrimeKG)项目地址: https://gitcode.com/gh_mirrors/pr/PrimeKG
PrimeKG(Precision Medicine Knowledge Graph,精准医疗知识图谱)是哈佛大学团队打造的开源项目,它整合了 20 个高质量生物医学资源,以 400 多万条关系描述了 17,080 种疾病,为精准医疗研究提供开箱即用的知识图谱数据集。本文以项目自带的自闭症案例研究为线索,带你看懂如何用知识图谱挖掘自闭症谱系障碍(ASD)的基因-疾病关联,全程几乎不需要复杂代码。
📊 先认识 PrimeKG:多尺度知识图谱
PrimeKG 是一个异质知识图谱:10 万+ 个节点分布在 10 个主要生物尺度上——疾病、基因/蛋白、药物、表型、解剖区域、通路、基因功能、环境暴露等,节点之间由 29 种类型的关系边连接。与传统单一数据表不同,PrimeKG 中的疾病节点与基因、表型、解剖区域密集相连,支持沿图做多跳推理,这正是挖掘基因-疾病关联的关键。
另一个亮点是多模态临床知识:PrimeKG 为疾病和药物节点附带了来自 Mayo Clinic、Orphanet、DrugBank 等权威医学机构的文本描述,查询图谱的同时可以直接获取临床知识。
🛠️ 环境搭建:3 步上手
第 1 步:克隆仓库
git clone https://gitcode.com/gh_mirrors/pr/PrimeKG cd PrimeKG第 2 步:安装依赖(二选一)
pip install -r updated_requirements.txt # 或使用 conda conda env create --name PrimeKG --file=environment.yml第 3 步:加载数据。PrimeKG 以 CSV 形式发布,用 pandas 一行即可载入:
import pandas as pd primekg = pd.read_csv('kg.csv', low_memory=False)💡 项目还提供
Therapeutics Data Commons(TDC)和PyKEEN两种社区数据加载器,可参考 README 中的 "Using PrimeKG" 章节。
🧬 案例研究:在图谱中追踪自闭症谱系障碍
项目的 case_study/autism.ipynb 提供了完整示例,核心思路是一条证据链:从疾病出发 → 找到疾病关联的基因 → 再找到靶向这些基因的药物。下图就是该案例的官方示例图:
第一步:定位疾病实体
不同疾病资源对同一疾病的命名不同,案例先在 MONDO、Orphanet、UMLS 三个库中检索 "autism",再选用命名更规范的MONDO中的 "autism spectrum disorder" 作为分析起点。这一步提醒我们:知识图谱分析前,统一实体命名非常重要。
第二步:查询疾病的直接药物关联
对图谱做单次查询即可命中边:
- autism spectrum disorder → Risperidone(利培酮,indication)
利培酮是用于缓解自闭症相关行为与情绪问题的第二代抗精神病药。图中右侧文本正是 PrimeKG 附着在药物节点上的 DrugBank 临床描述,左侧则是疾病节点的临床描述(来自 Mayo Clinic / Orphanet)——图谱结构与临床文本在此自然融合。
第三步:两跳推理,打通"疾病-基因-药物"
这是知识图谱真正的威力所在,沿边做两跳查询即可:
- 疾病 → 基因:ASD 通过
disease_protein关联边连接DRD1、HTR2A、OXT等基因; - 药物 → 靶点基因:利培酮通过
drug_protein边的靶点恰是DRD1、HTR2A; - 取交集:药物靶点基因与疾病关联基因重合,为"利培酮作用于 ASD 相关基因"提供了跨数据源的机制佐证。
案例中还能继续向外推理:例如验证利培酮的血浆蛋白载体ALB(白蛋白)及其表达所在的解剖区域,或沿phenotype_protein边查看DRD1关联哪些表型——一条关联证据在图上可以展开成一张完整的证据网络。
💡 新手实战技巧
- 本质是查表:案例 notebook 全部操作都是对
kg.csv的 pandas 查询,看懂x_name/y_name/relation三列即可复现全部结果; - 善用特征文件:
disease_features.csv与drug_features.csv存放各节点的临床文本描述,按节点索引即可取回,实现"结构+文本"联合查询; - 注意 OMIM 扩展:2023 年 12 月起 PrimeKG 完整纳入了 OMIM 的基因-疾病关联,新增 61 万余条边,显著增强了罕见病的基因-疾病关联覆盖,处理脚本见
datasets/processing_scripts/omim_tools.py; - 想重建图谱?:
knowledge_graph/build_graph.ipynb展示了如何将各数据源输出整合为最终图谱,datasets/primary_data_resources.sh汇总了 20 个数据源的下载方式。
📁 关键文件导航
| 路径 | 说明 |
|---|---|
case_study/autism.ipynb | 自闭症案例研究 notebook(本文主角) |
knowledge_graph/build_graph.ipynb | 知识图谱构建脚本 |
knowledge_graph/engineer_features.ipynb | 临床特征工程脚本 |
datasets/primary_data_resources.sh | 20 个原始数据源下载汇总 |
datasets/processing_scripts/ | 各数据源清洗处理脚本 |
environment.yml/updated_requirements.txt | 环境配置 |
🎯 小结
通过 PrimeKG 的自闭症案例可以看出:知识图谱把分散在 MONDO、DrugBank、NCBI Gene 等 20 个数据源中的证据"连"成了图,一次两跳查询就能完成"疾病 → 基因 → 药物"的关联挖掘,并附带权威临床文本。对于想入门生物医学知识图谱或精准医疗方向的同学,建议直接打开case_study/autism.ipynb跟着跑一遍——这是上手 PrimeKG 最快的路径。
【免费下载链接】PrimeKGPrecision Medicine Knowledge Graph (PrimeKG)项目地址: https://gitcode.com/gh_mirrors/pr/PrimeKG
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考