跳转至

LEfSe差异分析详解

一句话概述:LEfSe(Linear discriminant analysis Effect Size)是微生物组差异丰度分析的经典工具,通过Kruskal-Wallis检验+LDA效应量筛选组间差异物种。注意:2025年多项基准测试显示LEfSe假阳性率较高,建议与ALDEx2等方法配合使用。

核心知识点速查表

概念说明
LEfSe线性判别分析效应量(白话:找两组微生物组之间谁不一样)
LDA score效应量,>2通常认为有生物学意义
Kruskal-Wallis非参数检验,比较多组差异
Wilcoxon成对非参数检验,验证组间一致性

一、在线使用LEfSe

# === LEfSe在线版(Galaxy) ===
# 访问: https://huttenhower.sph.harvard.edu/galaxy/
# 步骤:
# 1. 上传数据(格式: 第1行=分组,后续行=物种丰度)
# 2. LEfSe → Format Data for LEfSe
# 3. LEfSe → LDA Effect Size
# 4. LEfSe → Plot LEfSe Results (柱状图+分支图)

二、命令行/Python使用

# === 安装LEfSe ===
conda install -c bioconda lefse

# === 准备输入文件 ===
# 格式: TSV文件
# 第1行: 分组(class)
# 第2行: 亚组(subclass, 可选)
# 后续行: 物种|丰度值

# === 运行LEfSe ===
# 第1步: 格式化
lefse_format_input.py \
    input.tsv \                      # 输入文件
    formatted.in \                   # 格式化输出
    -c 1 \                           # class所在行(第1行)
    -u 2 \                           # subclass所在行(第2行)
    -o 1000000                        # 归一化到百万

# 第2步: 运行LEfSe
lefse_run.py \
    formatted.in \                   # 输入
    lefse_results.res \              # 结果文件
    -l 2.0 \                         # LDA阈值(默认2.0)
    -a 0.05 \                        # Kruskal-Wallis p值阈值
    -w 0.05                           # Wilcoxon p值阈值

# 第3步: 可视化
lefse_plot_res.py \
    lefse_results.res \              # 结果文件
    lefse_barplot.png \              # 输出柱状图
    --dpi 300                         # 分辨率

lefse_plot_cladogram.py \
    lefse_results.res \              # 结果文件
    lefse_cladogram.png \            # 输出分类树图
    --dpi 300

三、R语言实现

# === 使用microbiomeMarker包 ===
library(microbiomeMarker)
library(phyloseq)

# 从phyloseq对象运行LEfSe
lefse_result <- run_lefse(
  ps,                                # phyloseq对象
  group = "Group",                    # 分组变量
  norm = "CPM",                       # 标准化方法
  lda_cutoff = 2,                     # LDA阈值
  kw_cutoff = 0.05,                   # KW检验p值阈值
  wilcoxon_cutoff = 0.05              # Wilcoxon检验p值阈值
)

# 查看差异物种
marker_table(lefse_result)

# 可视化
plot_ef_bar(lefse_result)             # 效应量柱状图
plot_cladogram(lefse_result)          # 分类树图

四、重要注意事项(2025更新)

# ⚠️ LEfSe的已知问题(基于2022-2025多项基准测试):
# 1. 假阳性率较高:比其他工具识别出更多"显著"物种
# 2. 不处理组成偏差:直接对相对丰度分析
# 3. 多重检验校正不足:默认不做FDR校正
# 4. 2025 Briefings in Bioinformatics研究:LEfSe可重复性较差

# 推荐做法:
# 1. LEfSe结果与ALDEx2/MaAsLin2取交集
# 2. 如果只用一种方法,推荐ALDEx2或MaAsLin2
# 3. 报告LEfSe结果时注明LDA阈值和p值阈值

五、面试高频考点

Q1: LEfSe的分析步骤?

  1. Kruskal-Wallis检验:筛选组间差异显著的物种
  2. Wilcoxon检验:在亚组间验证一致性
  3. LDA(线性判别分析):计算效应量,评估生物学意义
  4. LDA score > 2 被认为有生物学意义

Q2: 为什么2025年不推荐单独使用LEfSe?

  • Nearing等(2022, Nature Comms)发现LEfSe假阳性率高
  • Pelto等(2025, Briefings in Bioinf)发现LEfSe可重复性差
  • 推荐:ALDEx2(最保守)、MaAsLin2(平衡)、或多方法取交集

速查表

# === LEfSe速查 ===
# 命令行
lefse_format_input.py input.tsv formatted.in -c 1
lefse_run.py formatted.in results.res -l 2.0
lefse_plot_res.py results.res barplot.png

# R语言
library(microbiomeMarker)
run_lefse(ps, group="Group", lda_cutoff=2)

# 推荐组合: LEfSe + ALDEx2 取交集 → 更可靠的差异物种