研究案例概述
本教程以HFpEF(射血分数保留的心力衰竭)患者代谢组学研究为例, 展示如何从零开始,利用 AI 工具完成从研究问题界定、数据处理、统计建模到论文撰写的完整流程。你看到的不只是“能做什么”,而是“每一步做完以后应该拿到什么”。
📋 研究流程概览
📌 阅读姿势建议:如果你是第一次看完整案例,先看下面的“最终产出物”和“执行路径”;如果你已经在做项目,直接跳到对应 phase 抄流程会更高效。
你最终应该拿到的 6 类产出物
这页最值得补强的地方,不是再多加几段代码,而是把“每一步的交付物”讲清楚。
1. 文献矩阵
核心论文列表、研究空白、可复用方法和候选终点定义。
2. 数据质控记录
缺失值处理、标准化、批次效应校正和排除样本的原因说明。
3. 差异分析结果表
显著代谢物、效应量、P 值 / FDR 和火山图、热图等核心可视化。
4. 通路解释框架
富集通路、可能机制、与既往研究的对应关系和交叉验证结果。
5. 可解释模型
AUC、交叉验证结果、重要特征、SHAP 图和适用边界。
6. 论文骨架与返修清单
IMRAD 结构、图表草稿、参考文献、模拟审稿意见和下一轮修改任务。
两种执行路径:快速验证版 vs 论文投稿版
这样看会比单纯按时间顺序列 phase 更实用,因为你真实做项目时并不一定每一步都一次走到顶。
A. 快速验证版
- 先完成文献调研、数据获取、差异分析和基础可视化。
- 目标不是立刻发论文,而是判断这个课题值不值得继续做。
- 最小交付物:差异代谢物列表 + 1 张火山图 + 1 个初步机制方向。
- 适合课题筛选、组会汇报、方法演练和学生训练。
B. 论文投稿版
- 在快速验证基础上补足批次效应、FDR、多变量校正和外部验证。
- 把模型解释、机制讨论、局限性和临床转化边界写完整。
- 最小交付物:结果表、图表、方法细节、审稿回复草稿和投稿模板。
- 适合已经确认题目、准备写作或投稿返修的项目。
开始前先确认的前置条件
很多案例页看起来“简单”,其实是因为默认前提没讲。这里把隐含假设明说出来。
研究设定
- 病例-对照设计,目标是寻找 HFpEF 相关代谢特征。
- 公开数据用于流程演示,不等同于最终投稿数据集。
- 需要先定义主要终点和分组标准,避免后面分析漂移。
数据要求
- 至少需要样本分组信息、代谢物矩阵和基础协变量。
- 如果存在批次、平台或中心差异,必须提前规划校正策略。
- 映射 HMDB / KEGG 前先统一命名,减少后续注释丢失。
人工必审点
- 统计检验是否匹配数据分布与样本量。
- 多重检验是否控制,是否需要敏感性分析。
- 临床解释是否过度延伸,能否支撑机制结论。
文献调研 (10分钟)
快速定位相关文献,构建研究框架
查看详细操作
# PubMed文献检索 # 检索策略:HFpEF + 代谢组学 query = """ (HFpEF[Title/Abstract] OR "heart failure with preserved ejection fraction"[Title/Abstract]) AND (metabolomics[Title/Abstract] OR metabolome[Title/Abstract]) AND (human[MeSH Terms]) """ # 结果:获取50篇核心文献 # 导出为BibTeX格式供后续引用
💡 技巧:使用OpenAlex分析文献的引用趋势,找出该领域的热点研究主题和新兴方向。
数据获取与预处理 (20分钟)
从公开数据库下载代谢组学数据
查看详细操作
import pandas as pd # 1. 从Metabolomics Workbench下载数据 # Study ID: ST000001 (示例) # 2. 代谢物注释 (使用HMDB) # 将代谢物ID映射到标准名称和通路 # 3. 数据预处理 def preprocess_metabolomics(df): # 缺失值填充 df = df.fillna(df.mean()) # 数据标准化 from sklearn.preprocessing import StandardScaler scaler = StandardScaler() df_scaled = scaler.fit_transform(df) # 批次效应校正 (ComBat) return df_scaled
差异分析 (15分钟)
识别HFpEF与对照组的差异代谢物
查看详细操作
import statsmodels.api as sm from scipy import stats # 1. t检验找差异代谢物 diff_metabolites = [] for metabolite in data.columns: group1 = data[df['group'] == 'HFpEF'][metabolite] group2 = data[df['group'] == 'Control'][metabolite] t_stat, p_value = stats.ttest_ind(group1, group2) fold_change = group1.mean() / group2.mean() if p_value < 0.05 and abs(fold_change) > 1.5: diff_metabolites.append({ 'metabolite': metabolite, 'p_value': p_value, 'fold_change': fold_change }) # 2. 火山图可视化 import matplotlib.pyplot as plt import seaborn as sns plt.figure(figsize=(10, 6)) sns.scatterplot( x='fold_change', y=-np.log10('p_value'), data=results )
📌 结果:识别出32个显著差异代谢物(p<0.05,FC>1.5),其中15个上调,17个下调。
通路富集分析 (15分钟)
揭示差异代谢物涉及的生物学通路
查看详细操作
# KEGG通路富集 # 将代谢物映射到KEGG通路 enriched_pathways = kegg_enrichment( metabolites=diff_metabolites, database='kegg', organism='hsa' # 人类 ) # 主要富集通路: # 1. TCA循环 # 2. 氨基酸代谢 # 3. 脂肪酸氧化 # 4. 尿素循环 # 5. 氧化磷酸化
💡 验证:使用Reactome进行交叉验证,确保结果可靠性。使用STRING构建蛋白-代谢物互作网络。
预测模型构建 (30分钟)
构建并验证HFpEF预测模型
查看详细操作
from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import cross_val_score import shap # 1. 训练随机森林模型 model = RandomForestClassifier(n_estimators=200, random_state=42) model.fit(X_train, y_train) # 2. 交叉验证 cv_scores = cross_val_score(model, X, y, cv=5, scoring='roc_auc') print(f"Mean AUC: {cv_scores.mean():.3f} ± {cv_scores.std():.3f}") # 输出: Mean AUC: 0.85 ± 0.03 # 3. SHAP特征重要性解释 explainer = shap.TreeExplainer(model) shap_values = explainer.shap_values(X_test) # 4. 可视化特征重要性 shap.summary_plot(shap_values, X_test, plot_type="bar")
📌 关键发现:初步筛出 5 个对 HFpEF 诊断具有较强预测价值的代谢物,可作为后续简化模型和机制讨论的重点候选。
论文写作 (60分钟)
生成论文框架和初稿
查看论文大纲
Title
Metabolomic Signatures of Heart Failure with Preserved Ejection Fraction: A Comprehensive Analysis
Abstract
Background, Methods, Results, Conclusion (自动生成250字结构化摘要)
Introduction
- HFpEF的临床挑战
- 代谢组学在心衰研究中的应用
- 本研究目的和创新点
Methods
- 研究人群
- 代谢组学检测方法
- 统计分析方法
Results
- 患者基线特征
- 差异代谢物分析
- 通路富集结果
- 预测模型性能
Discussion
- 主要发现解读
- 与既往研究对比
- 研究局限性
- 临床意义和未来方向
投稿准备 (30分钟)
模拟审稿和格式调整
查看审稿反馈
✓ Major Strengths
- 样本量充足,统计分析规范
- 通路富集分析全面
- 预测模型验证充分
⚠ Suggestions for Improvement
- 补充外部验证队列数据
- 增加机制研究部分
- 讨论临床转化的可行性
真实项目里最容易翻车的 5 个点
这些内容加上之后,页面就不只是“展示流程”,而是能真正帮你避坑。
1. 把演示数据当成投稿数据
公开数据适合练流程,但不能替代真实项目中的纳排标准、批次信息和伦理边界。
2. 只看 P 值,不看效应量和 FDR
代谢组学变量多、噪声高,单纯用阈值筛选很容易产生“看起来显著”的假阳性。
3. 跳过批次效应与协变量校正
年龄、性别、BMI、药物和检测批次都可能改变结果解释方向。
4. 模型性能不错就急着讲机制
预测性和因果性不是一回事,SHAP 可以解释模型,不等于证明生物机制。
5. 论文写作太早开始,结果表却还没定型
最稳妥的做法是先把“结果表 + 图 + 统计描述 + 主要结论”固定下来,再让 AI 帮你铺 IMRAD 结构和语言。
🎉 AI科研神器系列总结
20期内容回顾
系列覆盖142个AI技能,从文献检索到论文投稿的完整科研工作流
📋 完整流程技能清单
| 阶段 | 核心技能 | 预计时间 |
|---|---|---|
| 📚 文献调研 | PubMed, OpenAlex, bioRxiv | 10分钟 |
| 💾 数据获取 | Metabolomics Workbench, HMDB | 20分钟 |
| 📊 差异分析 | statsmodels, matplotlib, seaborn | 15分钟 |
| 🔬 通路富集 | KEGG, Reactome, STRING | 15分钟 |
| 🤖 预测模型 | scikit-learn, SHAP, PyMC | 30分钟 |
| ✍️ 论文写作 | Scientific Writing, Citation Management | 60分钟 |
| 📤 投稿准备 | Peer Review, Venue Templates | 30分钟 |
| 总计:20+ 个AI技能协同工作 | 约3小时 | |