LoginSignup
0
1

More than 1 year has passed since last update.

細菌の起源予測をするFEAST をQIIME2 にインストールする

Last updated at Posted at 2022-04-11

細菌の起源予測をするFEASTについて

FEAST (Fast expectation-maximization for microbial source tracking)は、マイクロバイオームデータから起源を予測するツール。

論文はこちら。
Fast expectation-maximization for microbial source tracking (FEAST)

単離源予測だと、Rob Knight らが2013年に公開したSourceTrackerというベイズ統計を用いたツールが有名。

FEASTはRで実行するツールだが、QIIME2プラグインとしても追加可能で、本記事ではプラグイン導入の方法と実行例を示す。

インストール方法

依存関係のインストール

# QIIME2 の起動
$ source activate qiime2-{your version}

# R関連のパッケージをconda経由でインストール
$ conda install -c bioconda -c conda-forge -c r bioconductor-phyloseq r-devtools r-magrittr r-dplyr r-vgam r-tidyr r-vegan r-reshape2 r-rcpp r-rcpparmadillo r-gridextra r-ggplot2 r-ggthemes

メインスクリプトのインストール

まずは本家が出しているFEASTのスクリプトをRにてインストールする。

> devtools::install_github("cozygene/FEAST")

q2-FEAST の導入

FEAST論文著者のgithubからフォークされたFEAST_betaにQIIME2プラグインのためのスクリプトが格納されている。
そのため、FEAST_betaのgitリポジトリを自身のリポジトリとしてフォークしてからクローンする。

GitHubでリモートリポジトリをフォーク(Fork)する方法

# クローンする
$ git clone https://github.com/{your git account}/FEAST/tree/FEAST_beta

$ cd FEAST/

# ブランチの確認
$ git branch -a

# ブランチの切り替え
$ git switch FEAST_beta

Rでのインストール。

> devtools::install()

pipでのインストール。

$ pip install -e .[dev]

QIIME2の更新とコマンド確認。

# プラグイン追加後にQIIME2を更新
$ qiime dev refresh-cache
$ make test

# qiime コマンドを実行
$ qiime feast

Usage: qiime feast [OPTIONS] COMMAND [ARGS]...

  Description: This is a QIIME 2 plugin supporting microbial source-tracking
  through FEAST.

  Plugin website: https://github.com/cozygene/FEAST

  Getting user support: Please post to the QIIME 2 forum for help with this
  plugin: https://forum.qiime2.org

Options:
  --version    Show the version and exit.
  --citations  Show citations and exit.
  --help       Show this message and exit.

Commands:
  barplot     Visualize source-contributions with an interactive bar plot
  microbialtracking     microbial source-tracking

入力データの説明

FEASTでは、2つのデータを入力として用いる。

  • 系統組成のカウントテーブル
  • ソースとシンクが記載されたメタデータ

系統組成のカウントテーブル

今回はqzaファイルになっているFEAST/q2_feast/tutorials/data/backhed/table-multi.qzaを使用。

ERR525698 ERR525693 ERR525688 ERR525699
taxa_1 0 5 0 20
taxa_2 15 5 0 0
taxa_3 0 13 200 0
taxa_4 4 5 0 0

ソースとシンクが記載されたメタデータ

今回は、FEAST/q2_feast/tutorials/data/backhed/metadata-multi.tsvを使用。
Envにはサンプルがどの環境から取得されたかを記載する。
SourceSinkには、どのサンプルをソースとしてどのサンプルをシンクにするかを明記する。
host_subject_idは、特定のソースとシンクごとに起源予測をしたい場合に用いる。同一番号内のソースとシンクが比較される。
これは解析に必須項目ではない。

#SampleID Env SourceSink host_subject_id
#q2:types categorical categorical numeric
ERR525698 Env_1 Sink 1
ERR525693 Env_2 Source 1
ERR525688 Env_3 Source 1
ERR525699 Env_4 Source 1
ERR525910 Env_1 Sink 2
ERR525909 Env_2 Source 2
ERR525908 Env_3 Source 2
ERR525911 Env_4 Source 2

テスト

以下のコマンドで入力ファイルや各種オプションを実行する。

$ qiime feast microbialtracking \
  --i-table ./table-multi.qza \
  --m-metadata-file ./metadata-multi.tsv \
  --p-environment-column Env \
  --p-source-sink-column SourceSink \
  --p-source-ids Source \
  --p-sink-ids Sink \
  --p-shared-id-column host_subject_id \
  --p-em-iterations 1000 \
  --p-different-sources \
  --o-proportions ./mixing-proportions.qza 

--p-environment-column : サンプルの取得された環境名
--p-source-sink-column : ソースとシンクが記載された列名
--p-sink-ids --p-source-ids : ソースとシンクの要素名
--p-em-iterations : Expectation–maximization algorithmの試行回数
--o-proportions : 計算結果を格納するファイル名

mixing-proportions.qzaには、ソースのサンプル数 * シンクのサンプル数の行列データが格納される。
各シンクに対してソースの寄与率(0~1まで)が相対値として記載される。

可視化したいときは、おなじみのQIIME2 の棒グラフを、qiime feast barplotでq2-FEASTから実行できる。

$ qiime feast barplot \
  --i-mixing-proportions ./mixing-proportions.qza\
  --m-metadata-file ./metadata-multi.tsv \
  --o-visualization ./barplot.qzv

スクリーンショット 2022-04-11 9.28.44.png

参考

Fast expectation-maximization for microbial source tracking (FEAST)

sourcetracker2 plugin?

FEAST QIIME 2 Plugin

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1