47. 微生物组与宿主互作分析(Microbiome-Host Interaction Analysis)¶
一句话说明:微生物组与宿主互作分析就是研究肠道细菌和人体之间如何"对话"——谁在说话、说了什么、对方怎么回应,从而解释疾病发生的机制。
1. 什么是微生物-宿主互作¶
白话解释¶
你的肠道里住着大约 38 万亿个细菌(比你自身细胞还多),它们不是简单地"蹭吃蹭住",而是在跟你的身体不停地"聊天": - 细菌吃了你消化不了的膳食纤维,产生短链脂肪酸(SCFA)回馈给你——相当于"房客帮你做家务" - 细菌的代谢产物激活你的免疫细胞——相当于"邻居帮你看门" - 有些"坏租客"产生毒素破坏肠道屏障——相当于"房客搞破坏"
这种细菌与人体之间复杂的双向交流,就叫微生物-宿主互作(Microbiome-Host Interaction)。
正式定义¶
微生物-宿主互作是指定植于宿主体内/体表的微生物群落与宿主细胞、组织、免疫系统之间通过代谢物、信号分子、免疫因子等介质进行的双向信息传递与功能调控。
为什么重要¶
| 维度 | 具体影响 |
|---|---|
| 代谢调控 | 肠道菌群影响能量代谢、糖脂代谢(直接关联 T2D) |
| 免疫调节 | 菌群塑造先天和适应性免疫(Th17/Treg 平衡) |
| 肠脑轴 | 菌群通过迷走神经和代谢物影响大脑功能(肠-脑轴) |
| 屏障功能 | 菌群维持肠道屏障完整性,防止"肠漏"(Leaky gut) |
| 药物代谢 | 菌群可以代谢药物,影响药效(如二甲双胍在 T2D 中的作用) |
2. 互作分析方法全景图¶
2.1 相关性分析(Correlation Analysis)¶
白话:看两个东西是不是"一起变化"——细菌多了,某个指标是不是也变了。
常用方法¶
| 方法 | 特点 | 适用场景 |
|---|---|---|
| Pearson 相关 | 看线性关系,但不适合组成型数据 | 绝对定量数据 |
| Spearman 相关 | 看单调关系,对异常值稳健 | 排序数据,非正态分布 |
| SParCC | 专为组成型数据设计,解决假相关问题 | 16S/宏基因组相对丰度 |
| MaAsLin2 | 多变量关联,可校正混杂因素 | 菌群-表型关联(核心工具) |
为什么不能直接用 Pearson?¶
16S 测序数据是相对丰度(加起来 = 100%),这叫"组成型数据"。一个菌变多了,其他菌的比例就自动变小——这会产生假相关。SParCC 专门解决这个问题。
SParCC 原理(Friedman & Alm, 2012, PLoS Comput Biol):通过迭代估算真实的绝对丰度方差和协方差,从组成型数据中推断出真实的相关关系。在人类微生物组数据中,标准方法每找到 1 个真相关就会产生 3 个假相关,SParCC 能大幅减少这种误判。
2.2 因果推断(Causal Inference)¶
白话:相关性只能说"两件事总是一起出现",因果推断要回答"是 A 导致了 B,还是 B 导致了 A?"
| 方法 | 原理(白话) | 工具/包 |
|---|---|---|
| 孟德尔随机化(MR) | 用基因当"天然实验"——如果某个基因影响菌群,菌群又影响疾病,就能推因果 | TwoSampleMR(R) |
| 格兰杰因果检验 | 看时间序列:如果 A 的过去能预测 B 的未来,A 可能是 B 的原因 | statsmodels(Python) |
| 结构方程模型(SEM) | 同时检验多个变量之间的因果路径 | lavaan(R) |
| 贝叶斯网络 | 从数据中学习变量之间的有向图关系 | bnlearn(R) |
2.3 网络分析(Network Analysis)¶
白话:把所有细菌画成一张"社交网络图"——谁和谁是朋友(正相关),谁和谁是敌人(负相关),谁是"社交达人"(Hub 节点)。
核心工具:NetCoMi(Network Construction and Comparison for Microbiome data)
NetCoMi 是专为微生物组数据设计的 R 包,能够: - 构建微生物共现网络(Co-occurrence network) - 比较两组之间的网络差异(如 T2D 患者 vs 健康人) - 计算网络拓扑指标(度、介数中心性、模块化等)
# NetCoMi 网络构建示例
library(NetCoMi) # 加载 NetCoMi 包
# 构建网络:使用 SParCC 计算相关性
net_result <- netConstruct(
data = otu_table, # 输入 OTU/ASV 丰度表
measure = "sparcc", # 用 SParCC 方法计算相关(适合组成型数据)
measurePar = list( # SParCC 参数
iter = 20, # 迭代次数
inner_iter = 10 # 内部迭代次数
),
filtTax = "highestFreq", # 过滤策略:保留高频taxa
filtTaxPar = list(highestFreq = 50), # 保留前50个最常见的taxa
sparsMethod = "threshold", # 稀疏化方法:阈值法
thresh = 0.3 # 相关系数阈值:绝对值>0.3的保留
)
# 分析网络属性
net_props <- netAnalyze(
net_result, # 网络构建结果
centrLCC = TRUE, # 在最大连通分量上计算中心性
clustMethod = "cluster_fast_greedy" # 社区检测算法
)
# 可视化网络
plot(net_props,
nodeColor = "cluster", # 节点颜色按社区着色
nodeSize = "eigenvector", # 节点大小按特征向量中心性
labelScale = FALSE, # 标签不缩放
cexLabels = 0.8 # 标签字体大小
)
2.4 多组学整合(Multi-omics Integration)¶
白话:只看一种数据(比如只看菌群组成)就像盲人摸象,多组学整合就是把"菌群+代谢物+基因表达+免疫指标"全部合在一起看,才能看到完整的大象。
| 整合策略 | 方法 | 工具 |
|---|---|---|
| 早期整合 | 把所有数据拼成一个大矩阵一起分析 | MOFA2(R/Python) |
| 晚期整合 | 各组学单独分析后合并结果 | MetaboAnalyst |
| 中间整合 | 先降维再联合建模 | DIABLO/mixOmics(R) |
| 网络整合 | 构建跨组学关联网络 | WGCNA + 自定义 |
3. Microbiome-GWAS(mbQTL)¶
白话解释¶
GWAS 是研究"基因变异和疾病的关系",Microbiome-GWAS(也叫 mbQTL,即 microbiome Quantitative Trait Loci)就是研究"人的基因变异和肠道菌群组成的关系"——你的基因决定了你肚子里住什么细菌。
核心逻辑¶
经典发现¶
| 宿主基因 | 影响的菌群 | 机制 |
|---|---|---|
| LCT(乳糖酶) | Bifidobacterium(双歧杆菌) | 乳糖耐受者肠道有更多未消化乳糖,利于双歧杆菌生长 |
| FUT2(岩藻糖转移酶) | 整体菌群多样性 | FUT2 决定肠道黏液层的岩藻糖化水平,影响菌群定植 |
| NOD2(免疫受体) | Enterobacteriaceae(肠杆菌科) | NOD2 感知细菌肽聚糖,突变导致免疫监控失灵 |
| HLA 区域 | 多种菌属 | HLA 影响免疫识别,间接塑造菌群 |
分析流程¶
# mbQTL 分析简化流程(需要大样本量,通常 >1000 人)
# 1. 准备宿主基因型数据(PLINK 格式)
plink --bfile host_genotype \ # 输入基因型文件
--maf 0.05 \ # 最小等位基因频率过滤
--geno 0.02 \ # 基因型缺失率过滤
--mind 0.02 \ # 个体缺失率过滤
--hwe 1e-6 \ # Hardy-Weinberg 平衡检验
--make-bed \ # 输出 bed 格式
--out host_qc # 输出文件名
# 2. 准备菌群丰度数据(CLR 转换后)
# 在 R 中用 MaAsLin2 或自定义脚本做 CLR 转换
# 3. 运行关联分析(通常用线性混合模型)
# 常用工具:PLINK2、BOLT-LMM、GEMMA
plink2 --bfile host_qc \ # QC后的基因型
--pheno microbiome_clr.txt \ # CLR转换后的菌群丰度(每个菌属一列)
--glm \ # 广义线性模型
--covar covariates.txt \ # 协变量(年龄、性别、BMI、前10个PC)
--out mbqtl_results # 输出结果
# 4. 多重检验校正(Bonferroni 或 FDR)
# SNP数 × 菌属数 = 巨大的检验次数,需严格校正
4. 宏转录组分析(Metatranscriptomics)¶
白话解释¶
宏基因组告诉你"肠道里住着谁"(DNA层面),宏转录组告诉你"谁在干活、干了什么活"(RNA层面)。就好比宏基因组是查户籍看谁住在这个小区,宏转录组是装监控看谁在小区里活动。
与宿主互作的独特价值¶
宏转录组可以同时捕获两类 RNA: 1. 微生物 mRNA——细菌正在表达的基因(活性标志) 2. 宿主 mRNA(如果是组织样本)——宿主细胞的基因表达
这样就能直接观察"细菌在做什么"与"宿主在回应什么"的同步关系。
分析流程¶
# 宏转录组分析流程
# 1. 质控(去接头、去低质量)
fastp -i raw_R1.fq.gz \ # 输入原始正向reads
-I raw_R2.fq.gz \ # 输入原始反向reads
-o clean_R1.fq.gz \ # 输出质控后正向reads
-O clean_R2.fq.gz # 输出质控后反向reads
# 2. 去除宿主 RNA(非常关键!宿主RNA通常占 >90%)
bowtie2 -x human_genome \ # 人类参考基因组索引
-1 clean_R1.fq.gz \ # 质控后的reads
-2 clean_R2.fq.gz \
--un-conc-gz microbial.fq.gz \ # 未比对上的reads = 微生物reads
-S host_aligned.sam # 比对上的reads = 宿主reads
# 3. 去除 rRNA(微生物 rRNA 占大量,不是我们要的 mRNA)
sortmerna --ref rRNA_database \ # rRNA参考数据库
--reads microbial.fq.gz \ # 微生物reads
--aligned rRNA_reads \ # rRNA reads(丢弃)
--other mRNA_reads \ # mRNA reads(保留!这才是目标)
--fastx # 输出fastq格式
# 4. 功能注释(用 HUMAnN 做通路分析)
humann --input mRNA_reads.fq.gz \ # 输入mRNA reads
--output metatranscriptome_out \ # 输出目录
--nucleotide-database chocophlan \ # 核酸数据库
--protein-database uniref # 蛋白数据库
# 5. 计算 RNA/DNA 比值 = 基因活性指标
# RNA丰度 / DNA丰度 = 转录活性
# 比值 > 1 说明该基因/通路被"积极激活"
DNA vs RNA 对比表¶
| 维度 | 宏基因组(DNA) | 宏转录组(RNA) |
|---|---|---|
| 检测内容 | 谁在那里(存在) | 谁在干活(活性) |
| 稳定性 | 高(DNA 稳定) | 低(RNA 降解快) |
| 功能推断 | 间接(有基因≠表达) | 直接(有 RNA=正在表达) |
| 宿主信息 | 少 | 多(可捕获宿主转录组) |
| 实验难度 | 中等 | 高(需快速提取,防降解) |
5. 代谢物介导的互作¶
白话解释¶
细菌和人体之间的"对话"不是直接面对面,而是通过"信使"——代谢物。就像古代人不能打电话,得靠信鸽传信。这些"信鸽"主要有三类:
5.1 短链脂肪酸(SCFA)¶
SCFA 是肠道菌群发酵膳食纤维产生的小分子有机酸,是最重要的菌群代谢物。
| SCFA | 主要产生菌 | 功能 | 与 T2D 的关系 |
|---|---|---|---|
| 丁酸(Butyrate) | Faecalibacterium prausnitzii, Roseburia | 肠上皮细胞的主要能源,维持屏障完整性,抗炎 | T2D 患者丁酸产生菌显著减少 |
| 丙酸(Propionate) | Bacteroides, Akkermansia | 参与糖异生调控,刺激 GLP-1 分泌(促胰岛素) | 可改善胰岛素敏感性 |
| 乙酸(Acetate) | 多数厌氧菌 | 参与脂肪合成,调节食欲 | 影响外周脂肪代谢 |
膳食纤维 → 肠道菌群发酵 → SCFA → 多重效应:
├─ 丁酸 → 供能给肠上皮细胞 → 维持肠道屏障
├─ 丙酸 → 激活 GPR41/43 受体 → 刺激 GLP-1/PYY 分泌 → 调节血糖
└─ 乙酸 → 进入血液 → 影响肝脏脂肪合成和外周代谢
5.2 胆汁酸(Bile Acids)¶
| 类型 | 产生方 | 功能 |
|---|---|---|
| 初级胆汁酸 | 宿主肝脏合成(胆酸 CA、鹅去氧胆酸 CDCA) | 消化脂肪 |
| 次级胆汁酸 | 肠道菌群转化(脱氧胆酸 DCA、石胆酸 LCA) | 激活 FXR/TGR5 受体 → 调节糖脂代谢 |
与 T2D 的关键通路:
5.3 色氨酸代谢物(Tryptophan Metabolites)¶
肠道菌群可以将膳食中的色氨酸转化为多种信号分子:
| 代谢物 | 产生途径 | 功能 |
|---|---|---|
| 吲哚(Indole) | 细菌色氨酸酶 | 激活 AhR 受体 → 增强肠道屏障,抗炎 |
| 吲哚-3-丙酸(IPA) | Clostridium sporogenes | 强抗氧化剂,保护肠道屏障 |
| 5-HT(血清素) | 肠嗜铬细胞(菌群调控) | 调节肠道蠕动、情绪(90%的血清素在肠道产生) |
6. 常用分析工具详解¶
6.1 MaAsLin2(核心推荐)¶
全称:Microbiome Multivariable Associations with Linear Models 2
开发者:Harvard T.H. Chan 公共卫生学院 Huttenhower 实验室
功能:高效发现微生物特征与临床/环境元数据之间的多变量关联
核心优势: - 支持多种统计模型(线性模型、混合效应模型、负二项模型等) - 内置多种数据标准化/转换方法(TSS、CSS、CLR、AST 等) - 可校正混杂因素(年龄、BMI、药物使用等) - 支持纵向研究设计(重复测量)
# MaAsLin2 完整分析示例
library(Maaslin2) # 加载包(Bioconductor安装:BiocManager::install("Maaslin2"))
# 输入数据准备
# features:行=样本,列=微生物特征(物种/通路等)
# metadata:行=样本,列=临床变量
result <- Maaslin2(
input_data = "species_abundance.tsv", # 微生物丰度表(TSV格式)
input_metadata = "metadata.tsv", # 样本元数据表
output = "maaslin2_output", # 输出目录
# 模型参数
fixed_effects = c("T2D_status", # 固定效应:T2D状态(主要研究变量)
"age", "BMI", # 需要校正的混杂因素
"sex"),
random_effects = c("subject_id"), # 随机效应:受试者ID(用于纵向数据)
# 统计方法
analysis_method = "LM", # 分析方法:LM=线性模型(也可选CPLM, NEGBIN, ZINB)
normalization = "TSS", # 标准化:TSS=总和缩放(相对丰度)
transform = "LOG", # 转换:对数转换
# 过滤
min_abundance = 0.0001, # 最小丰度阈值(去掉极低丰度的菌)
min_prevalence = 0.1, # 最小流行度(至少10%样本中出现)
# 多重检验校正
correction = "BH", # Benjamini-Hochberg FDR 校正
significance_threshold = 0.25, # q-value 阈值(MaAsLin2 默认 0.25)
# 参考水平
reference = c("T2D_status,control") # 参考组:健康对照
)
# 输出文件说明:
# significant_results.tsv → 显著关联的特征
# all_results.tsv → 所有检验结果
# figures/ → 散点图(每个显著关联一张)
6.2 SParCC¶
全称:Sparse Correlations for Compositional data
论文:Friedman & Alm (2012). "Inferring Correlation Networks from Genomic Survey Data." PLoS Comput Biol 8(9): e1002687
解决的核心问题:16S/宏基因组的相对丰度数据是组成型的(compositional),直接用 Pearson/Spearman 会产生大量假相关。SParCC 通过迭代算法估计真实的绝对丰度之间的相关性。
# SParCC Python 使用示例(fastspar 是 C++ 加速版)
# 安装:conda install -c bioconda fastspar
# 命令行运行 FastSpar(SParCC 的快速实现)
# 1. 计算相关系数
fastspar \
--otu_table otu_table.tsv \ # 输入OTU表(tab分隔)
--correlation cor_matrix.tsv \ # 输出相关系数矩阵
--covariance cov_matrix.tsv \ # 输出协方差矩阵
--iterations 50 \ # 迭代次数(越多越准,默认50)
--threads 4 # 线程数
# 2. Bootstrap 计算 p 值
mkdir bootstrap_counts # 创建bootstrap目录
fastspar_bootstrap \
--otu_table otu_table.tsv \ # 原始OTU表
--number 1000 \ # bootstrap次数(推荐>=1000)
--prefix bootstrap_counts/boot # 输出前缀
# 3. 对每个bootstrap样本计算相关系数
parallel fastspar \
--otu_table {} \
--correlation bootstrap_cor/cor_{/} \
--covariance bootstrap_cor/cov_{/} \
--iterations 10 \
::: bootstrap_counts/boot_*.tsv
# 4. 计算 p 值
fastspar_pvalues \
--otu_table otu_table.tsv \ # 原始OTU表
--correlation cor_matrix.tsv \ # 原始相关系数
--prefix bootstrap_cor/cor_ \ # bootstrap相关系数前缀
--permutations 1000 \ # 排列次数
--outfile pvalues.tsv # 输出p值矩阵
6.3 NetCoMi¶
全称:Network Construction and Comparison for Microbiome data
功能:构建、分析和比较微生物网络
核心特性: - 支持多种关联度量(SParCC、SPRING、SpiecEasi、Pearson、Spearman 等) - 支持两组网络的统计比较(如 T2D vs 健康) - 自动计算网络拓扑指标(度、介数、Hub 节点等)
# NetCoMi 两组网络比较示例(T2D vs 健康人)
library(NetCoMi)
# 构建两组网络
net_compare <- netConstruct(
data = otu_t2d, # T2D组的OTU表
data2 = otu_healthy, # 健康组的OTU表
measure = "sparcc", # 使用SParCC计算相关
filtTax = "highestFreq", # 过滤:保留高频taxa
filtTaxPar = list(highestFreq = 30), # 保留前30个
sparsMethod = "threshold", # 阈值稀疏化
thresh = 0.3 # 相关阈值
)
# 分析网络差异
net_anal <- netAnalyze(
net_compare,
centrLCC = TRUE, # 在最大连通分量上计算
clustMethod = "cluster_fast_greedy"
)
# 比较两个网络的差异(置换检验)
net_comp <- netCompare(
net_anal,
permTest = TRUE, # 做置换检验
nPerm = 1000, # 置换次数
seed = 42 # 随机种子
)
summary(net_comp) # 查看差异显著性
# 输出:哪些网络属性(连通性、模块化、Hub节点)在两组间显著不同
6.4 MMUPHin¶
全称:Meta-analysis Methods with Uniform Pipeline for Heterogeneity in Microbiome Studies
开发者:Huttenhower 实验室(同 MaAsLin2)
功能:微生物组多队列荟萃分析,主要解决: - 不同研究之间的批次效应校正 - 跨队列的差异丰度荟萃分析 - 发现可重复的菌群模式
# MMUPHin 批次校正 + 荟萃分析示例
library(MMUPHin) # 安装:BiocManager::install("MMUPHin")
# 1. 批次效应校正(不同研究的系统差异)
fit_adjust <- adjust_batch(
feature_abd = abundance_matrix, # 微生物丰度矩阵(行=特征,列=样本)
batch = "study_id", # 批次变量:研究来源
covariates = "disease_status", # 需要保留的生物学差异
data = sample_metadata # 样本元数据
)
# fit_adjust$feature_abd_adj 就是校正后的丰度矩阵
# 2. 荟萃分析:跨队列发现与T2D相关的菌
fit_meta <- lm_meta(
feature_abd = abundance_matrix, # 丰度矩阵
batch = "study_id", # 批次变量
exposure = "T2D_status", # 暴露变量(T2D/对照)
covariates = c("age", "sex", "BMI"), # 协变量
data = sample_metadata # 元数据
)
# 查看结果:哪些菌在多个队列中一致地与T2D相关
fit_meta$meta_fits # 荟萃分析结果,包含效应量和p值
7. 免疫-微生物互作分析¶
白话解释¶
免疫系统是人体的"国防部",肠道菌群是"外来居民"。免疫系统需要区分"好居民"和"坏居民",而菌群也在不停地"训练"免疫系统。研究这种互作需要同时知道免疫细胞的组成和菌群的组成。
CIBERSORT/CIBERSORTx 反卷积¶
问题:我们通常只有组织的混合基因表达数据(bulk RNA-seq),不知道里面各种免疫细胞各占多少。
解决方案:CIBERSORTx(Stanford Alizadeh Lab 开发)利用机器学习反卷积算法,从混合表达数据中推断 22 种免疫细胞的比例。
# CIBERSORT 反卷积 + 菌群关联分析流程
# 第一步:上传 bulk RNA-seq 数据到 CIBERSORTx 网站
# 网址:https://cibersortx.stanford.edu/
# 选择 LM22 签名矩阵(22种免疫细胞)
# 下载结果:每个样本的22种免疫细胞比例
# 第二步:在 R 中关联免疫细胞比例与菌群丰度
library(Maaslin2)
# 将免疫细胞比例作为 metadata 的一部分
immune_microbe_result <- Maaslin2(
input_data = "species_abundance.tsv", # 菌群丰度
input_metadata = "immune_metadata.tsv", # 包含免疫细胞比例的元数据
output = "immune_microbe_output",
fixed_effects = c("M1_Macrophages", # 关注的免疫细胞类型
"CD8_T_cells",
"Tregs",
"age", "sex"), # 校正变量
normalization = "TSS",
transform = "LOG"
)
# 或者用 Spearman 相关做快速探索
# 菌群丰度矩阵 vs 免疫细胞比例矩阵
cor_result <- cor(
microbe_abundance, # 菌群丰度矩阵
immune_fractions, # 免疫细胞比例矩阵
method = "spearman" # Spearman相关(适合非正态数据)
)
# 可视化:热图
library(pheatmap)
pheatmap(cor_result,
color = colorRampPalette(c("blue", "white", "red"))(100),
main = "Microbiome-Immune Cell Correlation")
T2D 中的关键免疫-菌群轴¶
| 免疫细胞 | 相关菌群变化 | 在 T2D 中的表现 |
|---|---|---|
| M1 巨噬细胞(促炎) | LPS 产生菌增多 → 激活 M1 | T2D 中 M1 比例升高 → 慢性炎症 |
| Treg(调节性 T 细胞) | SCFA 产生菌减少 → Treg 分化减弱 | T2D 中 Treg 减少 → 免疫耐受下降 |
| Th17 细胞 | 分节丝状菌(SFB)驱动 Th17 | Th17/Treg 失衡 → 胰岛素抵抗 |
| ILC3(天然淋巴细胞) | 菌群多样性下降 → ILC3 功能受损 | IL-22 分泌减少 → 肠道屏障受损 |
8. 与 T2D 项目的深度关联¶
该项目背景回顾¶
研究项目研究 2型糖尿病肠道菌群,使用随机森林模型。微生物-宿主互作分析是这个项目的生物学核心——你在做的不只是分类预测,而是揭示菌群通过什么途径影响胰岛素抵抗。
肠道菌群-胰岛素抵抗轴¶
T2D 患者肠道菌群失调(Dysbiosis)
│
├── SCFA产生菌减少 → 丁酸↓ → 肠道屏障受损 → 细菌 LPS 入血
│ │
│ ┌────────────────────┘
│ ↓
├── LPS 激活 TLR4 → NF-κB 通路 → 慢性低度炎症(TNF-α, IL-6↑)
│ │
│ ↓
├── 炎症因子干扰胰岛素信号通路 → IRS-1 丝氨酸磷酸化 → 胰岛素抵抗
│
├── 胆汁酸代谢紊乱 → FXR/TGR5 信号异常 → GLP-1 分泌减少
│
└── 支链氨基酸(BCAA)代谢改变 → mTOR 过度激活 → β细胞功能障碍
你的随机森林模型中,这些知识如何用¶
| 模型环节 | 互作知识的应用 |
|---|---|
| 特征选择 | 优先关注已知与胰岛素抵抗相关的菌属(Faecalibacterium、Roseburia、Akkermansia) |
| 特征工程 | 构建 SCFA 产生菌丰度和、Firmicutes/Bacteroidetes 比值等生物学有意义的衍生特征 |
| 结果解释 | 模型发现的重要特征用互作通路来解释其生物学意义 |
| 讨论部分 | 将分类结果与"肠道菌群-炎症-胰岛素抵抗"轴联系起来 |
面试中怎么串联¶
"该项目用随机森林模型识别了 T2D 相关的关键菌属。模型中 Faecalibacterium 和 Roseburia 是重要特征,它们恰好是主要的丁酸产生菌。丁酸维持肠道屏障完整性,减少 LPS 易位和慢性炎症——这就是'肠道菌群-炎症-胰岛素抵抗'轴的核心。所以我的模型不仅有统计学上的预测能力,背后有清晰的生物学机制支撑。"
9. 面试高频题与参考答案¶
Q1:请解释微生物-宿主互作的主要方式¶
参考答案: 微生物与宿主互作主要通过三种方式: 1. 代谢物介导:菌群产生的 SCFA(短链脂肪酸)、胆汁酸代谢物、色氨酸代谢物等直接作用于宿主细胞受体(如 GPR41/43、FXR、TGR5、AhR) 2. 免疫介导:菌群成分(如 LPS、肽聚糖、鞭毛蛋白)被宿主模式识别受体(TLR、NOD)识别,激活或调节免疫响应 3. 直接接触:菌群通过黏附素与肠上皮细胞直接接触,影响屏障功能和细胞信号传导
白话说就是:菌群通过"送信"(代谢物)、"身份证查验"(免疫识别)和"面对面"(直接接触)三种方式跟人体对话。
Q2:为什么微生物组数据不能直接用 Pearson 相关?¶
参考答案: 因为 16S/宏基因组数据是组成型数据(compositional data)——所有物种的相对丰度加起来等于 100%(或 1)。这意味着一个物种丰度增加时,其他物种的相对丰度会被动下降,即使它们的绝对丰度没变。直接用 Pearson 相关会产生大量假负相关。
解决方案包括: - SParCC:通过迭代算法推断绝对丰度间的真实相关(Friedman & Alm, 2012) - CLR 转换(Centered Log-Ratio):用 Aitchison 几何处理组成型数据 - SpiecEasi:基于稀疏逆协方差估计的方法
Q3:SCFA 如何介导菌群与胰岛素抵抗的关系?¶
参考答案: SCFA(主要是丁酸、丙酸、乙酸)介导菌群对胰岛素敏感性的影响通过以下途径: 1. 丁酸是肠上皮细胞的主要能源,维持肠道屏障完整性。T2D 患者丁酸产生菌(Faecalibacterium、Roseburia)减少→屏障受损→LPS 易位→TLR4/NF-κB 激活→慢性炎症→胰岛素信号通路被干扰 2. 丙酸激活肠道 L 细胞的 GPR41/GPR43 受体,刺激 GLP-1 和 PYY 分泌,GLP-1 促进胰岛素分泌并改善胰岛素敏感性 3. 乙酸通过 AMPK 通路影响肝脏和外周组织的脂肪氧化
关键的因果证据来自粪菌移植(FMT)实验:将瘦人的粪便菌群移植给代谢综合征患者,可以显著改善胰岛素敏感性(Vrieze et al., 2012, Gastroenterology)。
Q4:MaAsLin2 和 LEfSe 有什么区别?该用哪个?¶
参考答案:
| 维度 | LEfSe | MaAsLin2 |
|---|---|---|
| 方法 | Kruskal-Wallis + LDA | 广义线性模型(可选多种) |
| 混杂因素 | 只能做简单分组比较 | 可以校正多个协变量(年龄、BMI 等) |
| 纵向数据 | 不支持 | 支持(混合效应模型) |
| 多重检验 | 内置 | BH FDR 校正 |
| 输出 | 效应量排序 | 系数、置信区间、散点图 |
| 适用场景 | 快速探索性分析 | 严谨的关联分析(发表论文级) |
建议:快速看看差异用 LEfSe,正式分析发论文用 MaAsLin2。如果有混杂因素需要校正(几乎所有临床研究都有),必须用 MaAsLin2。
Q5:如何设计一个微生物-宿主互作的多组学研究?¶
参考答案: 我会设计以下多组学方案: 1. 样本类型:同一批受试者同时收集粪便(菌群)+ 血液(代谢组+转录组+免疫指标) 2. 检测平台: - 粪便:16S rRNA 测序(菌群组成)+ 宏基因组(功能潜力)+ 宏转录组(活性基因) - 血液:LC-MS 代谢组学(SCFA、胆汁酸等)+ bulk RNA-seq(宿主转录组) 3. 分析流程: - 各组学单独分析(差异分析、功能注释) - MaAsLin2 做菌群-表型关联 - CIBERSORTx 反卷积推断免疫细胞组成 - MOFA2/DIABLO 做多组学整合 - NetCoMi 构建跨组学关联网络 4. 验证:用孟德尔随机化或动物实验验证因果关系
10. 速查表¶
工具速查¶
| 工具 | 功能 | 安装 | 输入 | 输出 |
|---|---|---|---|---|
| MaAsLin2 | 菌群-表型多变量关联 | BiocManager::install("Maaslin2") | 丰度表 + 元数据 | 关联结果 + 散点图 |
| SParCC/FastSpar | 组成型数据相关分析 | conda install -c bioconda fastspar | OTU 表 | 相关矩阵 + p 值 |
| NetCoMi | 微生物网络构建与比较 | devtools::install_github("stefpeschel/NetCoMi") | 丰度表(可分组) | 网络图 + 拓扑指标 |
| MMUPHin | 多队列荟萃分析 | BiocManager::install("MMUPHin") | 多队列丰度表 | 批次校正数据 + 荟萃结果 |
| CIBERSORTx | 免疫细胞反卷积 | 网页版(cibersortx.stanford.edu) | bulk RNA-seq | 22 种免疫细胞比例 |
| MOFA2 | 多组学因子分析 | BiocManager::install("MOFA2") | 多个组学矩阵 | 潜在因子 + 权重 |
| HUMAnN | 宏基因组/宏转录组功能注释 | conda install -c bioconda humann | 测序 reads | 通路丰度表 |
代谢物-受体速查¶
| 代谢物 | 受体 | 信号通路 | 生理效应 |
|---|---|---|---|
| 丁酸 | GPR109A | HDAC 抑制 | 抗炎、屏障保护 |
| 丙酸 | GPR41/43 | Gαi/Gβγ | GLP-1 分泌 |
| 次级胆汁酸 | FXR | FGF15/19 | 肝脏糖异生调控 |
| 次级胆汁酸 | TGR5 | cAMP/PKA | GLP-1 分泌 |
| 吲哚 | AhR | IL-22 | 肠道屏障修复 |
| LPS | TLR4 | NF-κB | 促炎(胰岛素抵抗) |
分析方法选择决策树¶
你要研究什么?
│
├── 菌群与临床指标的关联 → MaAsLin2
│ └── 有混杂因素? → 必须用 MaAsLin2(不能用 LEfSe)
│
├── 菌群之间的相互关系 → SParCC + NetCoMi
│ └── 要比较两组网络? → NetCoMi(netCompare)
│
├── 多个队列数据整合 → MMUPHin
│ └── 有批次效应? → 先用 adjust_batch 校正
│
├── 菌群与免疫细胞的关系 → CIBERSORTx + MaAsLin2
│
├── 因果推断 → 孟德尔随机化(TwoSampleMR)
│
└── 多组学整合 → MOFA2 / DIABLO
11. 延伸资源¶
必读论文¶
| 论文 | 年份 | 要点 |
|---|---|---|
| Qin J et al. "A metagenome-wide association study of gut microbiota in type 2 diabetes." Nature | 2012 | T2D 菌群 GWAS 开山之作 |
| Mallick H et al. "Multivariable Association Discovery in Population-scale Meta-omics Studies." PLoS Comput Biol | 2021 | MaAsLin2 方法论文 |
| Friedman J & Alm EJ. "Inferring Correlation Networks from Genomic Survey Data." PLoS Comput Biol | 2012 | SParCC 方法论文 |
| Pedersen HK et al. "Human gut microbes impact host serum metabolome and insulin sensitivity." Nature | 2016 | 菌群-代谢物-胰岛素抵抗的多组学整合 |
| Kurilshikov A et al. "Large-scale association analyses identify host factors influencing human gut microbiome composition." Nat Genet | 2021 | 最大规模 mbQTL 研究(MiBioGen 联盟) |
| Vrieze A et al. "Transfer of Intestinal Microbiota From Lean Donors Increases Insulin Sensitivity." Gastroenterology | 2012 | FMT 改善胰岛素敏感性的因果证据 |
学习资源¶
| 资源 | 链接 |
|---|---|
| Huttenhower Lab 工具集(MaAsLin2/MMUPHin/HUMAnN) | https://huttenhower.sph.harvard.edu |
| bioBakery 教程(官方 wiki) | https://github.com/biobakery/biobakery/wiki |
| NetCoMi GitHub 文档 | https://github.com/stefpeschel/NetCoMi |
| CIBERSORTx 在线平台 | https://cibersortx.stanford.edu |
| MiBioGen 联盟(mbQTL 数据) | https://mibiogen.gcc.rug.nl |
| mixOmics/DIABLO 教程 | https://mixomics.org |
推荐学习路径¶
第1天:理解互作概念 + SCFA/胆汁酸通路
↓
第2天:跑通 MaAsLin2(菌群-表型关联)
↓
第3天:学会 SParCC/FastSpar(相关网络)
↓
第4天:用 NetCoMi 构建和比较网络
↓
第5天:理解 CIBERSORTx 反卷积 + 免疫-菌群关联
↓
第6天:MMUPHin 多队列整合
↓
第7天:整合到该 T2D 项目叙事中
文档信息:知识库2 第47篇 | 主题:微生物组与宿主互作分析 | 关联项目:T2D 肠道菌群 + 随机森林 核心工具:MaAsLin2、SParCC/FastSpar、NetCoMi、MMUPHin、CIBERSORTx 参考来源:Huttenhower Lab 官网、PLoS Comput Biol、Nature、Nature Genetics、CIBERSORTx Stanford