メタゲノミクスは、環境サンプルから回収された遺伝物質の研究である。これらのサンプルは、特定の環境の多様性や生態学に関する情報を提供する。メタゲノミクス研究は通常、ショットガンシーケンスデータセットから得られた微生物シーケンスに焦点を当てている[ref.1]。ウイルス、細菌、真核生物の成分の特徴付けは、特定のサンプルに存在する多様性を総合的に理解するために重要である[ref.1]。シーケンシングプラットフォームとツールの急速な開発と改良により、研究者は環境サンプルの種の豊富さと多様性をよりよく観察することができる。しかしながら、これらの進歩はまた分析され解釈されるべき膨大な量のデータの発生をもたらした。大量のテキストデータを分析するのは面倒で困難なプロセスである。メタゲノミクス研究も例外ではない。得られたデータセットは、本質的な多次元性と、複数レベルの階層および接続性の存在によって特徴付けられる[ref.2]。視覚化は、研究者がデータについてさらに質問をすることができるもの、および追加の分析を実行できるものを決定するのに役立つ。対話機能により、さらに調査と分析のオプションが追加される。メタゲノミクスデータの視覚化は研究の活発な分野であり、毎年新しい方法が開発されている。視覚化方法は、それらの視覚化能力に従って分類することができる。いくつかの方法は、単一のメタゲノムを視覚的に探索することを目的としているが、他の方法は、複数のメタゲノムの視覚化を可能にする。このツールには、円グラフ、バブルチャート、ツリーと樹状図、ボックスプロット、自己組織化マップなど、さまざまな種類の視覚化も含まれる。さまざまな視覚化方法とツールの詳細なレビューについては[ref.2]を参照してください。
ここでは、アラスカ内陸部の古代の土壌における生物多様性のパターンを調査するために、微生物、ウイルス、真核生物種を含むメタゲノムの種構成を調べることができる可視化ツール、Keanuを開発した。このツールは、ローカルで開くことができ、内容に基づいてサンプルをさらに分析する方法を決定するために探索できるインタラクティブなWebページを生成する。この種の探索的データ分析は、どのような種類の追加の質問にデータを尋ねることができるのか、およびより多くのデータを収集する必要があるのかどうかを知らせる[ref.3]。静止画像は小さなデータセットを探索するのに役立つが、そのような画像はデータによっては非常に大きくまたは非常に詳細になることがあるため、それらの探索は困難になる。この対話型の視覚化はNCBI分類データベースからの情報を使用して、ルートから種レベルまで降順で各分類群の存在量を示している。ユーザーは、データセット全体の混沌としたノイズの多い視覚化を作成せずに分類の特定のサブセクションを探索できる。
Keanuに似たツールが開発された。 MetaSee [ref.4]は、かつてはWebサービスおよびスタンドアロンのGUIアプリケーションとして利用可能だった。Keanuが使用しているのと非常によく似た形式でメタゲノムデータを表示できる対話型の視覚化ツールだったが、MetaSeeを実行することは、サーバーのソースコードをダウンロードしてローカルで実行する必要があるため、簡単な作業ではない。 Blobtools [ref.5]とMetacoder [ref.6]はどちらも大きな静止画像を作成する。 Blobtoolsは、BLOBプロットを作成するPythonツールである。 Metacoder [ref.6]はヒートツリーを作成するRパッケージである。どちらもKeanuの開発を駆り立てたインタラクティブな機能を欠いている。 Keanuはローカルで実行されるため、ユーザーはWebサービスを使用してデータベースを管理するのではなく最新のデータベースを管理したり、サービスをホストしたりすることができる。また、Keanuの対話機能は出力の分析に役立つ。
Fig. 2
flow diagram of Keanu showing how data is piped into different tools or processes
論文より転載
インストール
依存
Keanu can be run on any system where Python is available, which includes Windows, macOS, and Linux.
- Keanu is written in Python 3.5 and is available with an ex- ample dataset at https://github.com/IGBB/keanu (Fig. 1).
git clone https://github.com/IGBB/keanu.git
cd keanu/
> python3 make_db.py -h
# python3 make_db.py -h
usage: make_db.py [-h] [-names NAMES] [-nodes NODES] [-merged MERGED]
[-deleted DELETED] [-out_db OUT_DB] [-out_md_db OUT_MD_DB]
A tool to format NCBI taxonomy data for Keanu
optional arguments:
-h, --help show this help message and exit
-names NAMES Location of names.dmp
-nodes NODES Location of nodes.dmp
-merged MERGED Location of merged.dmp
-deleted DELETED Location of delnodes.dmp
-out_db OUT_DB Name of output taxonomy database
-out_md_db OUT_MD_DB Name of output merged/deleted database
> python3 format_input.py -h
# python3 format_input.py -h
usage: format_input.py [-h] [-in INPUT] [-out OUTPUT]
A tool to format BLAST qseqid/staxid files into Keanu's input
optional arguments:
-h, --help show this help message and exit
-in INPUT, --input INPUT
BLAST query/taxon data
-out OUTPUT, --output OUTPUT
Output filename
> python3 keanu.py -h
# python3 keanu.py -h
usage: keanu.py [-h] [-db DATABASE] [-md_db MERGED_DELETED_DATABASE]
[-view {tree,bilevel}] [-in INPUT] [-out OUTPUT]
optional arguments:
-h, --help show this help message and exit
-db DATABASE, --database DATABASE
Formatted taxonomy database
-md_db MERGED_DELETED_DATABASE, --merged_deleted_database MERGED_DELETED_DATABASE
Merged/deleted taxonomy database
-view {tree,bilevel}, --view {tree,bilevel}
View choice
-in INPUT, --input INPUT
Input data set
-out OUTPUT, --output OUTPUT
Output HTML filename
実行方法
1、blast実行。" -outfmt '6 std staxids' "をつけて実行する。ここではblastnを使っているが、感度を上げるならアミノ酸で探す(クエリが塩基配列なら、プロテインデータベースを用意してx)。
blastn -db blast_database/nt -query sample2.fasta -outfmt '6 std staxids' -out query.txt -num_threads 10 -evalue 1e-10
2、データベース作成。初回のみ。ローカルのblastデータベースを指定する。
#taxdmpファイルのダウンロード
wget ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz
tar -zxvf taxdump.tar.gz
python3 make_db.py -names names.dmp -nodes nodes.dmp \
-out_db taxonomy.dat -deleted delnodes.dmp -merged merged.dmp \
-out_md_db merged_deleted.dat
3、クエリデータの準備。
python3 format_input.py -in query.txt -out keanu.txt
4、グラフ表示
bilevel partition graph
python3 keanu.py -db taxonomy.dat -md_db merged_deleted.dat \
-in keanu.txt -view bilevel -out bilevel.html
5、collapsible tree表示
python3 keanu.py -db taxonomy.dat -md_db merged_deleted.dat \
-in keanu.txt -view tree -out tree.html
テスト時はhtml出力でエラーになxった。
引用
Keanu: a novel visualization tool to explore biodiversity in metagenomes
Adam Thrash, Mark ArickII, Robyn A. Barbato, Robert M. Jones, Thomas A. Douglas, Julie Esdale, Edward J. Perkins and Natàlia Garcia-ReyeroEmail author
BMC Bioinformatics 2019 20 (Suppl 2) :103
参考
https://evosite3d.blogspot.com/2013/06/browsing-ncbi-taxonomy-with-python.html