靶点交集分析
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_aabd9d68/target-intersection。
技能介绍
它解决什么问题
网络药理学流程里,中药成分靶点与疾病靶点各自由上游技能产出,但「哪些靶点是药物与疾病真正共享的」这一步往往靠临时拼脚本完成:读文件、做集合求交、画韦恩图,还要处理多疾病场景下的分组与产物组织。这个技能把这段逻辑收敛成一个确定性入口。
核心能力
- 多集合全交集:以
Drug_Targets_Gene_List.txt与疾病目录下所有{Disease}_Gene_List.txt为输入,计算drug ∩ diseaseA ∩ diseaseB ∩ ...,上限 6 个集合。 - 输入自动发现:扫描
--disease-dir,排除Disease_前缀的聚合产物;只有 1 个疾病时退化为两集合比较。 - 双渲染路径:
- --method html(默认):纯 Python 生成交互式页面,支持点击区域查看基因、搜索、布局切换与 CSV 导出,不依赖 R。
- --method r:基于 ggVennDiagram + ggplot2 输出 PDF 矢量图,套用内置期刊主题,可选 lancet / npg / viridis 调色板。
- 统一产物契约:两条路径都写出
intersection_genes.txt,下游 PPI 与富集分析可直接消费。
工作流
- 校验药物列表与疾病目录存在,扫描基因文件。
- 按
--output-mode auto判定:1 个疾病走single,2 个及以上自动切换multi-disease。 - 计算交集并写出产物;多疾病模式额外生成
drug_{disease}.txt、{disease}_specific_genes.txt、shared_genes.txt与multi_disease_report.txt。 - 渲染韦恩图,HTML 或 PDF。
注意点
- 集合数上限 6(药物 + 最多 5 个疾病),超出直接报错退出。
- 比较不区分大小写,但输出保留药物侧列表的原始大小写。
- 执行前需人工确认输出目录有无残留文件,脚本本身不会拦截覆盖。
r方法依赖 R 与两个包;非交互环境下只有显式追加--install-missing-r-packages才会自动安装。- 交集为 0 是合法结果,会生成空列表文件。
- HTML 路径仅 jQuery 走 CDN,其余资源本地打包,离线场景仍需留意这一外部依赖。
- 它只做求交:不获取成分靶点(Skill 1)、不收集疾病靶点(Skill 2)、不做 PPI(Skill 4)或富集(Skill 5)。
使用场景
- 已完成 Skill 1 与 Skill 2,需要计算药物靶点与各疾病靶点的全交集并输出基因列表。
- 有多个疾病靶点文件,需要自动发现并生成多疾病交集报告与韦恩图。
- 论文需要期刊风格矢量韦恩图,使用 R 方法输出 PDF 并切换调色板。
- 无 R 环境时使用 html 方法,在浏览器中搜索基因、点击区域并导出 CSV。
适合人员
- 网络药理学研究生,需要把药物与疾病的共同靶点整理成可复现的输出。
- 中药研发工程师,要在多疾病场景下核对靶点交集并生成投稿用韦恩图。
- 生信分析师,需要把交集结果稳定衔接到 PPI 与富集分析流程。
- 医学期刊作者,需要符合 Nature 或 Lancet 配色的矢量韦恩图。