qiime2 有自带的差异分析工具的(composition ancom),可是,大家已经习惯了一直用的 lefse,于是,把 qiime2 的结果导出进行 lefse 分析,在某种程度上就是一个“刚需”啦!在希望 qiime2 官方或者 lefse 官方做一个 q2-lefse 之前,我们的解决方案有哪几个呢?这里分享下我找到的几个,欢迎补充。
使用 QIIME2 进行微生物组测序分析的 Python 模块。看起来是个台湾同胞写的,最近一次更新在两年前。文档在这里--dokdo documentation--lefse[2]
为了使用 LEfSe,需要打开两个终端窗口:一个用于您通常的 QIIME 2 环境,另一个用于运行 LEfSe。对于后者,应该创建一个新的 conda 环境并安装 LEfSe,如下所述:
# 安装dokdo
git clone https://github.com/sbslee/dokdo
cd dokdo
pip install .
# 激活环境
conda activate qiime2-2020.8
conda create -n lefse -c conda-forge python=2.7.15
conda activate lefse
conda install -c bioconda -c conda-forge lefse
设置好两个终端之后,可以从 QIIME 2 特性表中为 LEfSe 创建一个输入文件。以“Moving Pictures”教程为例(在 QIIME 2 终端下运行)。
dokdo prepare-lefse \
-t data/moving-pictures-tutorial/table.qza \
-x data/moving-pictures-tutorial/taxonomy.qza \
-m data/moving-pictures-tutorial/sample-metadata.tsv \
-o output/Useful-Information/input_table.tsv \
-c body-site \
-u subject \
-w "[body-site] IN ('tongue', 'gut', 'left palm')"
然后,就可以选择使用 Galaxy 或者本地进行分析啦!这个方法最早是在这里看到的,github 上竟然没有搜索到。尋找生物標記(Biomarker) LEfSe + dokdo[3]
Lefse after QIIME2[5]为 LEfSe 准备 Qiime2 文件:
qiime taxa collapse --i-table table.qza --o-collapsed-table collapse.table.qza --p-level 6 --i-taxonomy taxonomy.qza
qiime feature-table relative-frequency --i-table collapse.table.qza --o-relative-frequency-table collapse.frequency.table.qza --output-dir collapse.frequency/
qiime tools export collapse.frequency.table.qza --output-dir collapse.frequency/
biom convert \ -i collapse.frequency.table.biom -o collapse.frequency.table.txt --header-key “taxonomy” --to-tsv
您需要为 LEfSe 格式化文本文件。这意味着,根据您是否有类或子类,您必须在文件顶部添加 2-3 行。第 1 行需要是您的类,第 2 行需要是您的子类,第 3 行将是您的全部 “;”,在整个分类中必须更改为 “|”。
EasyAmplicon/pipeline.sh at master · YongxinLiu/EasyAmplicon (github.com)[6]
## LEfSe输入文件准备
### 3.1. 命令行生成文件
# 可选命令行生成输入文件
Rscript ${db}/script/format2lefse.R -h
mkdir -p result/lefse
# threshold控制丰度筛选以控制作图中的枝数量
Rscript ${db}/script/format2lefse.R --input result/otutab.txt \
--taxonomy result/taxonomy.txt --design result/metadata.txt \
--group Group --threshold 0.4 \
--output result/lefse/LEfSe
### 3.2 Rmd生成输入文件(可选)
#1. result目录中存在otutab.txt, metadata.txt, taxonomy.txt三个文件;
#2. Rstudio打开EasyAmplicon中format2lefse.Rmd,另存至result目录并Knit生成输入文件和可重复计算网页;
这三种方法,相比手动处理,还是多了些方便的,减少了出错的可能,欢迎交流,你用的是哪种呀!
参考资料
[1]
dokdo: https://github.com/sbslee/dokdo
[2]
dokdo documentation--lefse: https://dokdo.readthedocs.io/en/latest/useful_information.html#lefse
[3]
尋找生物標記(Biomarker) LEfSe + dokdo: https://ithelp.ithome.com.tw/articles/10312346?sc=rss.qu
[4]
qiime2 to LEfSe: https://forum.qiime2.org/t/qiime2-to-lefse/13132/3
[5]
Lefse after QIIME2: https://forum.qiime2.org/t/lefse-after-qiime2/4496/8
[6]
EasyAmplicon/pipeline.sh at master · YongxinLiu/EasyAmplicon (github.com): https://github.com/YongxinLiu/EasyAmplicon/blob/master/pipeline.sh