差异物种分析主要基于物种丰度信息和样品分组,进行组间差异物种的检测。这里使用 lefse 进行差异物种分析。
LEfSe
LEfSe(Linear discriminant analysis Effect Size)差异分析可以实现多组之间的比较,并可以基于分组进行亚组间的比较分析,从而找到组间丰度上有显著差异的biomarker。
- 采用Kruskal-Wallis 秩和检验检测组间丰度差异显著物种;
- 使用wilcoxon秩和检验进行亚组间差异分析
- 线性判别分析(LDA)对数据进行降维和评估差异显著的物种的影响力
网址如下:http://huttenhower.sph.harvard.edu/galaxy/
lefse 输入数据格式如图:
参考脚本
# 准备输入文件
## sample.txt
## S.taxName.count.tsv 包含物种分类信息的丰度文件
# 数据准备-data部分
awk -F "\t" -v 'OFS=\t' '{$1=$NF; $NF=""; {print $0}}' S.taxName.count.tsv | \
sed 1d | sed 's/; /|/g' > S.lefse.tmp
# 数据准备-class部分
head -n 1 S.lefse.tmp |sed 's/\t/\n/g' | sed '1d' | \
while read sp ;do awk '$2=="'$sp'" {printf "\t"$1 }' sample.txt ;done > S.lefse.header
# 合并
cat S.lefse.header S.lefse.tmp > S.lefse
# 格式转换
format_input.py S.lefse \ # 输入
S.lefse.in \ # 输出
-c 1 \ # class所在行
-s -1 \ # subclass所在行
-u 2 \ # subject所在行
-o 1000000 # normalization 到1M
# 运行lefse
run_lefse.py S.lefse.in \ # 输入
S.lefse.out \ # 输出
-l 2 # LDA阈值
# LDA图
plot_res.py S.lefse.out \ #输入文件
S.lefse.LDA.pdf \ #输出文件
--format pdf #输出格式
# 进化分支图
plot_cladogram.py S.lefse.out \ #输入文件
S.lefse.cladogram.pdf \ #输出文件
--format pdf \ #输出格式
--labeled_start_lev 1
网友评论