生物信息学与算法Microbiome生物信息学

Qiime1-17.PICRUSt-16S预测宏基因组?

2018-12-19  本文已影响1人  jlyq617

16S扩增子测序是对细菌中具有代表性的序列进行测序,相比宏基因组测序,16S扩增子测序无法提供基因功能信息,只能给出菌群丰度信息。但是PICRUSt工具可以帮助我们基于16S扩增子测序所得的OTU丰度推测基因丰度从而得到功能信息。本节我们就来介绍PICRUSt的使用。

相比于宏基因组测序,16S扩增子测序是一种更加经济的方法,但是16S扩增子测序无法得到各个基因的丰度,只能得到物种丰度信息。想来,每一个做微生物的人除了关心菌群的差异以外,也很好奇究竟哪些功能发生了变化,那么你只做了16S又想要知道功能信息怎么办呢?那就要使用PICRUSt这个工具了,通过使用已知的基因组及其基因组组成,PICRUSt可以根据OTU的丰度推断出基因丰度,得到功能信息。

下载安装PICRUSt

1、下载最新的PICRUSt安装包

# 下载PICRUSt安装包至本地home文件夹
wget -P $HOME https://github.com/picrust/picrust/releases/download/v1.1.3/picrust-1.1.3.tar.gz

2、解压安装包

# 解压安装包
tar -zxvf $HOME/picrust-1.1.3.tar.gz

3、下载相关数据库
下载含有能够将菌群匹配到KEGG基因的信息的数据库。下载下面的两个文件并将它们保存在picrust-1.1.3/picrust/data路径下。

# 新建路径保存所需数据库
mkdir -p $HOME/picrust-1.1.3/picrust/data

# 下载16S数据库信息
wget -P $HOME/picrust-1.1.3/picrust/data ftp://ftp.microbio.me/pub/picrust-references/picrust-1.0.0/16S_13_5_precalculated.tab.gz

# 下载KEGG基因信息
wget -P $HOME/picrust-1.1.3/picrust/data ftp://ftp.microbio.me/pub/picrust-references/picrust-1.0.0/ko_13_5_precalculated.tab.gz

4、在你的系统里安装PICRUSt

sudo pip install -e ~/picrust-1.1.3/

5、测试是否安装成功

predict_metagenomes.py --version
#> Version: predict_metagenomes.py 1.1.3

预测宏基因组

PICRUSt是基于GreenGene数据库的结果进行预测的。但是你可以发现GreenGene最新的版本还是2013年的,所以很多人可能会选择和更新速度更快的、更新的SILVA数据库比对,那么如果你想要预测就要使用另一个预测工具Tax4Fun,那可以参考此篇博文:16S预测宏基因组最强R包-Tax4Fun

而本节我们首先从下载GreenGenes数据库的相关文件开始:

1、下载GreenGenes数据库文件
虽然之前看到说要以gg_13_5_otus的版本进行比对,但是实际上用gg_13_8_otus也是没有任何问题的。

wget ftp://greengenes.microbio.me/greengenes_release/gg_13_8_otus/taxonomy/97_otu_taxonomy.txt

2、去除De-novo OTUs(NewReferenceOTU)
PICRUSt只能基于closed reference OTU,所以你可以重新使用pick_closed_reference_otus.py进行OTU的提取。但是如果已经使用了pick_open_reference_otus.py的方法而且不想再进行一次OTU的选取了,那么就可以将表中NewReferenceOTU剔除。具体命令如下:

# 该命令是Qiime1下的,所以要激活Qiime1的环境
filter_otus_from_otu_table.py \
-i otu_table.biom \
-o closed_otu_table.biom \
--negate_ids_to_exclude \
-e 97_otu_taxonomy.txt

3、转换Biom表为json格式
删除De-novo OTU后,需要将.biom文件转换为传统格式。这仅适用于使用QIIME版本1.9.1生成的OTU表。

# 该命令是Qiime1下的,所以要激活Qiime1的环境
biom convert \
-i closed_otu_table.biom \
-o closed_otu_table_json.biom \
--table-type="OTU table" --to-json

接下来我们就要真正的使用PICRUSt中的指令了。第一步就是要对数据进行归一化。

4、归一化

normalize_by_copy_number.py \
-i closed_otu_table_json.biom \
-o closed_otu_table_json_normalized.biom

5、预测宏基因组
接下来,我们就可以基于16s rRNA计数数据开始预测宏基因组。此命令的输出生成类似于OTU表的文件设置。每个样品的每个KEGG基因都有一列计数。由于这种相似性,我们可以使用许多可用的QIIME命令。

predict_metagenomes.py \
-i closed_otu_table_json_normalized.biom \
-o metagenome_predictions.biom

6、统计不同水平的情况(可选)
我们可以执行的另一个步骤是将KEGG基因根据不同水平进行统计转化为Pathway计数,而不是显示每个基因标识符。通过将基因计数转换为Pathway通路计数,以便于我们的分析。

# Level 3 (highest-detail)
categorize_by_function.py \
-i metagenome_predictions.biom \
-o predicted_metagenomes_L3.biom \
-c KEGG_Pathways \
-l 3

# Level 2 (mid-detail)
categorize_by_function.py \
-i metagenome_predictions.biom \
-o predicted_metagenomes_L2.biom\
-c KEGG_Pathways \
-l 2

# Level 1 (least-detail)
categorize_by_function.py \
-i metagenome_predictions.biom \
-o predicted_metagenomes_L1.biom\
-c KEGG_Pathways \
-l 1

预测到这里已经结束,那我们如何再进一步对预测结果进行分析呢?之前已经提到最后的预测结果和Biom表十分相像,这为我们用Qiime1对其进行分析提供了可能。那我们来看看如何进行后续的分析呢?

利用Qiime1分析预测结果

1、生成参数文件
你可以根据自己的需求修改参数文件,比如修改summarize_taxa的level水平等等。

echo 'summarize_taxa:md_identifier "KEGG_Pathways"' >> picrust_parameters.txt
echo 'summarize_taxa:absolute_abundance True' >> picrust_parameters.txt
echo 'summarize_taxa:level 3' >> picrust_parameters.txt
echo 'beta_diversity:metrics bray_curtis,euclidean' >> picrust_parameters.txt

2、绘制整体分布图
我们将使用QIIME命令绘制KEGG的统计图。我们需要引用刚刚在上一步中创建的参数文件。根据输入文件确定水平。如果使用的是Level 3,则参数文件必须表示summarize_taxa:level 3,但如果使用的是Level 2,则必须说明summarize_taxa:level 2

summarize_taxa_through_plots.py \
-i predicted_metagenomes_L3.biom \
-o sum_taxa_level3/ \
-p picrust_parameters.txt

3、Beta多样性-PCoA
a. 获取counts情况

biom summarize-table \
-i metagenome_predictions.biom \
-o metagenome_predictions_stats.txt

b. 稀释PICRUSt表
将PICRUSt表稀释到所有样本的最小测序深度。

single_rarefaction.py \
-i metagenome_predictions.biom \
-o metagenome_predictions_even_sampled.biom \
-d MINIMUM

c. 绘制PCoA图

beta_diversity_through_plots.py \
-i metagenome_predictions_even_sampled.biom \
-o bdiv_metagenome_predictions/ \
-m mapping_file.txt \
-p picrust_parameters.txt
上一篇下一篇

猜你喜欢

热点阅读