macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

正確で拡張可能な系統樹を構築する uDance

2023/08/05 間違った説明を修正

 

 系統樹は、生命のツリーを横断して進化の歴史を整理するための枠組みを提供し、メタゲノム同定などの下流の比較解析に役立つ。16S rRNAのような単一マーカー遺伝子に依存する手法では、数十万種の生物で精度の低い系統樹が作成される一方、ゲノムワイドなデータを使用する手法では、大量のゲノムに対して拡張性がない。著者らは、分割統治戦略(dividide-and-conquer strategy)を用いて、ゲノムワイドな推論を更新可能にする手法であるupdating trees using divide-and-conquer (uDance)を紹介する。この手法は、ツリーの異なる部分を独立に改良し、既存のツリーから構築することができ、高い精度とスケーラビリティを持つ。uDanceを用いて、387のマーカー遺伝子、合計425億アミノ酸残基を用いた約20万ゲノムの種ツリーを推論した。

 

レポジトリより

uDanceは、系統推定や既存の系統樹の更新を行う、拡張性の高いエンドツーエンドのワークフローである。uDanceへの入力は、バックボーンツリー、バックボーン配列のDNAまたはアミノ酸の多重配列アラインメント(MSA)セット、および新しい(クエリ)配列である。また、バックボーンツリーが利用できない場合、uDanceは多様性の高いバックボーン種のセットを選択し、バックボーンツリーを再構築することもできる。高度なレベルでは、uDanceはクエリ配列をバックボーンツリー上に独立して挿入し、その後、ツリーをさまざまな部分で局所的に改良する。バックボーンは、クエリ配列から得られる新しい情報に基づいて変更することができるが、uDanceは、解析において更新間の一貫性を必要とするユーザーのために、バックボーンの関係を固定したインクリメンタルツリーも出力する。uDanceは大規模データの自動解析を目的としているため、品質管理およびフィルタリングのストラテジーを多数内蔵している。また、より多くの配列が利用可能になると、前の反復の出力を次の反復の入力として使用し、ツリーをインクリメンタルに成長させることができる。

 

インストール

対応

Github

git clone https://github.com/balabanmetin/uDance.git
cd uDance/
bash install.sh #condaのコマンドはmambaに書き換えてから実行した
conda activate udance

 

テストラン

ランの仕様はconfig.yamlファイルで定義する。config.yamlのworkdirフィールドで作業ディレクトリを指定する。入力の配列アラインメントは、<workdir>/alignments下に配置する。testデータセットの場合、入力と作業両方のディレクトリはdatasmallで、入力アラインメントはalignments下、すなわちdatasmall/alignmentsに作成する必要がある。

config.yaml

詳細はレポジトリのuDance configuration settings参照。config.yamlでは、10遺伝子のマルチプル配列アラインメント、99のバックボーン配列、146のクエリ配列のリストファイルを含むテストデータセットを指定する。

datasmall/ 

species.txt

datasmall/aligments/

 

実行する。

cd uDance/
snakemake -c 4 --configfile config.yaml --snakefile udance.smk all

出力

datasmall/output/

 

レポジトリより

ワークフローは3つの系統樹: output/udance.maxqs.nwk、output/udance.incremental.nwk、output/udance.updates.nwk、を出力する。さらに多くの中間ファイルを出力する。

trimmed/はトリミングされた配列

output/backbone.nwkはバックボーンのツリー。バックボーンのツリーが最初から指定されていた場合、同一のツリーファイルになる。それ以外の場合は、Mainlinesアルゴリズムを用いてバックボーン配列が選択され、選択された配列IDがbackbone/0/species.txtに書き込まれる。選択された配列の遺伝子樹はbackboneディレクトリにある(詳細はレポジトリ参照)。

backbone/0/

 

placementには、バックボーンとクエリのアラインメント、および配置段階で使用されるバックボーンツリーが含まれる。placement.jplaceはAPPLES-2が出力するjplaceファイル。

placement/

 

uDanceによって作成されたパーティションは、ディレクトリudanceの下にある(詳細はレポジトリ参照)。

 

udance/color_spanning_tree.nwkはspanning tree of partitions of the placement tree(詳細はレポジトリ参照)。

udance/

 

引用

Generation of accurate, expandable phylogenomic trees with uDance
Metin Balaban, Yueyu Jiang, Qiyun Zhu, Daniel McDonald, Rob Knight, Siavash Mirarab

Nat Biotechnol. 2023 Jul 27