PPI 蛋白互作网络构建与 hub 基因筛选
蛋白互作(PPI)网络分析把一组候选基因映射到已知的蛋白相互作用数据库,构建以蛋白为节点、互作为边的网络,再用拓扑指标找出位于网络中心的 hub 基因,或用社区检测拆出功能模块。最常用的数据源是 STRING,它整合实验、数据库、共表达、文本挖掘等证据并给出综合置信分;BioGRID、IntAct 以实验证据为主。筛选和出图常在 Cytoscape 中借助 stringApp、cytoHubba、MCODE 完成,也可用 R 的 STRINGdb 与 igraph 脚本化实现。
什么时候用
- 差异基因或模块基因较多,需要从中挑出处于网络中心的候选
- 想了解候选基因之间是否存在已知的物理或功能联系
- 把较大的网络拆成功能模块,再分别做富集注释
- 网络药理学中构建药物靶点与疾病靶点交集的互作网络
- 为某个目标蛋白查找已知互作伙伴,设计免疫共沉淀等验证实验
不适合的情况
- 一次输入一两千个以上基因,网络过密,hub 指标失去区分度
- 用 PPI hub 证明调控方向或因果:数据库的边不含方向和条件信息
- 研究物种在 STRING 中注释稀少时,边多来自同源推断,可信度有限
需要准备的数据
- 候选基因列表
- 基因符号或 UniProt ID,建议几十到几百个;附带 log2FC 等属性便于给节点着色
- 物种
- STRING 以 NCBI Taxonomy ID 区分物种,人为 9606、小鼠为 10090
- 互作置信阈值
- STRING 综合分范围 0–1,常用 0.4 中等或 0.7 高置信,需事先确定并写入方法
- 表达或差异结果(可选)
- 用于映射节点颜色和大小,并在 hub 筛选后核对表达方向
分析步骤
- 1
映射基因
去重并统一为官方基因符号,提交 STRING 网页或用 STRINGdb 包的 map() 映射。逐个检查未映射的基因,常见原因是旧名、别名或物种选错,修正后再继续。
- 2
设置证据与阈值
选定置信分阈值,常用 0.4 或 0.7。若担心文本挖掘带来研究热度偏差,可只保留实验和数据库证据重新建网,比较两版网络的 hub 是否一致。
- 3
构建并清理网络
只保留输入基因之间的互作,去掉孤立节点后导出边表。记录节点数、边数和 STRING 给出的 PPI 富集 P 值,后者说明列表内互作是否多于随机预期。
- 4
计算拓扑指标
在 Cytoscape 中用 cytoHubba,或在 R 中用 igraph 计算 degree、betweenness、closeness 等。degree 是直接连接数,betweenness 衡量节点在不同区域之间充当桥梁的程度。
- 5
筛选 hub 基因
常用做法是取 MCC、Degree、MNC 等多种算法各自前 10 名的交集,减少单一指标偏差。交集基因再回查表达方向是否一致、在研究体系中是否有表达。
- 6
识别网络模块
用 MCODE、MCL 或 Louvain 等社区检测方法拆分模块,按模块得分和节点数选出主要模块,对每个模块分别做 GO/KEGG 富集,确认模块内功能集中。
- 7
可视化与导出
节点颜色映射 log2FC,大小映射 degree,hub 基因加粗或高亮。导出高分辨率网络图和节点属性表,避免标签重叠,图注中写明置信阈值和证据来源。
关键参数与决策
置信分阈值
0.4 网络更完整但含较多弱证据,0.7 更可靠但可能丢失真实互作,0.9 只保留最强证据,适合小网络。网络过密时提高阈值,过稀时降低并说明理由。
证据通道
STRING 包括实验、数据库、共表达、文本挖掘、基因邻近、融合和共现等通道。文本挖掘会让研究多的基因连接更多,想减少热门基因偏差时可关闭。
是否添加外部互作蛋白
默认只看输入基因内部互作。添加一级邻居可以连通孤立节点,但新增蛋白不在你的数据中,不应作为本研究的 hub 结果报告。
hub 排序指标
Degree 简单直观;MCC 关注节点参与的极大团,常与 degree 并用;betweenness 适合找连接不同模块的节点。建议多指标取交集,并写明指标和前 N 名。
MCODE 参数
常沿用默认值:degree cutoff 2、node score cutoff 0.2、K-core 2。调整后对比模块数量与大小,选择得分较高、规模适中且功能可解释的结果。
常见错误
- 把 STRING 的所有边都当成物理结合:综合分包含共表达和文本共现,边只表示存在关联证据,写作时宜称「互作关联」。
- 一次输入几千个基因建网:网络变成一团,degree 排名基本反映蛋白在文献中的研究热度,hub 失去对本研究的特异性。
- 只按 degree 选 hub:TP53、AKT1 等研究充分的基因几乎总排在前面,与本研究数据关系不大,应结合表达变化和多指标交集。
- 映射时丢失别名基因:部分输入基因因名称不匹配没有进入网络,若恰好是关键基因,会直接改变 hub 结果。
- 跨物种混用:用人的网络分析小鼠基因名,大小写和同源关系不一致会导致大量错配,应选对应物种或先做同源转换。
- hub 基因表达变化很小却不交代:这类 hub 作为候选说服力不足,应在结果中注明其差异倍数和显著性。
结果怎么看
PPI 网络图
节点为蛋白,边为互作,常用颜色表示上调或下调、大小表示 degree。看网络是否有清晰的核心区域和模块;若大多数节点孤立,说明列表内已知互作很少,hub 分析意义有限。
拓扑指标表
列出每个节点的 degree、betweenness、closeness 等。degree 和 betweenness 都高的节点既是枢纽又是桥梁;betweenness 高而 degree 低的节点常位于两个模块之间。
hub 基因交集图
用 Venn 或 UpSet 图展示多种算法前 N 名的重叠。交集越稳定越可信;若不同算法的结果几乎不重叠,说明网络结构松散,应重新审视置信阈值。
模块列表与富集结果
MCODE 等输出每个模块的得分、节点数和边数。对高分模块做富集,模块内功能集中说明拆分合理;若各模块富集结果与整体网络相同,模块划分意义不大。
hub 子网络图
只保留 hub 基因及其一级邻居重新绘图,便于在正文中展示。若 hub 之间彼此直接相连,说明它们构成紧密的核心复合体;若各自分散,更可能分属不同功能模块,应分别讨论。
和相近方法怎么选
STRING 与 BioGRID、IntAct
STRING 整合多类证据并给出综合置信分,覆盖面广,适合初筛;BioGRID 和 IntAct 主要收录实验验证的互作,边更可靠但覆盖较少。需要强证据时以后两者为主,或在 STRING 中只保留实验通道。
Cytoscape 与 R igraph
Cytoscape 交互式操作、插件齐全,适合调整布局和出版级出图;igraph 脚本化,适合批量计算拓扑指标和保证复现。常见做法是在 R 中计算,在 Cytoscape 中美化。
PPI hub 与 WGCNA hub
PPI hub 依据数据库中已知互作,偏向研究充分的蛋白;WGCNA hub 依据本数据的共表达,反映当前样本中的协同变化。两者取交集,可以兼顾已知证据和本数据支持。
PPI 模块与 GO 富集
GO 富集按已有注释把基因归类,不考虑基因之间是否有互作;PPI 模块按互作的紧密程度拆分基因,再对每个模块做富集。后者能区分同一通路中真正连成一体的子集,两者常配合使用。
常见问题
STRING 置信度选 0.4 还是 0.7?
0.4 是 STRING 默认的中等置信度,适合输入基因较少、希望看到更多联系的情况;0.7 是高置信度,适合网络已经很密或需要更可靠证据时。两种都常见,关键是在方法中写明并保持一致。
cytoHubba 应该选哪个算法?
没有唯一正确答案。常见做法是同时运行 MCC、Degree、MNC、EPC 等几种算法,取各自前 10 名的交集作为 hub 基因,这样比单一算法更稳健,也便于在文章中说明筛选依据。
PPI 网络中的孤立节点要删除吗?
通常删除。孤立节点在当前置信阈值下与其他输入基因没有已知互作,不参与拓扑计算,保留只会让图更杂乱。但应在结果中报告孤立节点的数量,说明有多少基因未进入网络。
hub 基因筛出来之后怎么验证?
先在本数据和独立数据集中确认表达变化方向一致,再看其功能是否与研究问题相关,然后用 qPCR、Western blot、敲低或过表达实验验证。PPI 只提供候选,不能单独作为机制证据。
STRING 给出的 PPI enrichment p-value 是什么?
它检验输入列表内部的互作数是否多于同样大小的随机蛋白集合的期望值。显著说明这批蛋白在功能上有一定联系;不显著时网络多为偶然连接,hub 分析的解释力较弱。
在 Codar 里怎么做
在 Codar 中,提供候选基因列表或差异结果并说明物种和置信阈值,Codar 会完成基因映射与蛋白互作网络构建,计算 degree、betweenness 等拓扑指标,做社区划分并筛选 hub 基因,再按表达变化给节点着色出图。交付边表与节点表、hub 基因表、模块列表、网络图、报告和脚本。
这是 186 个人类差异基因(含 log2FC),请用 STRING 0.7 置信度建 PPI 网络,用多种指标取交集筛 hub 基因,并在图上标出上下调。