macでインフォマティクス

macでインフォマティクス

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

複数のラージゲノム間のシンテニーを高速に検出する ntsynt

 

 近年、リファレンスグレードのゲノムアセンブリは大幅に多様化している。このような豊富なデータにより、ゲノム間の配列保存に関する情報を提供し、種の進化に関する重要な知見に貢献するゲノムのシンテニーの検出を含む、スケーラブルな複数種の比較ゲノム解析のための堅牢なツールの開発が急務となっている。ntSyntは、最小化グラフベースのアプローチにより、大規模な複数ゲノムのシンテニーブロックを計算するスケーラブルなユーティリティである。ntSyntは、約3Gbpの複数のゲノムを用いて、34GBのメモリを用い、最大2時間で79-100%のカバー率を持つシンテニーブロックを生成する。既存の最先端手法と比較して、ntSyntは多様な入力ゲノム配列とシンテニーブロックの粒度に柔軟に対応できる。我々(著者ら)は、ntSyntが促進するマクロシンテニックゲノム解析が、生命のツリー全体にわたる種内および種間の重要な進化的洞察を生み出す上で、広範な有用性を持つことを期待している。

 

wiki

https://github.com/bcgsc/ntSynt/wiki/de-novo-statistics-summary

visualization

https://github.com/bcgsc/ntSynt/tree/main/visualization_scripts

 

インストール

依存

  • python 3.9+ with modules:
  • intervaltree
  • pybedtools
  • ncls
  • python-igraph

Github

mamba create -n ntsynt python=3.9 -y
conda activate ntsynt
mamba install -c bioconda -c conda-forge ntsynt -y

git clone https://github.com/bcgsc/ntSynt.git
cd ntSynt/
./run_ntSynt_demo.sh 

> ntSynt -h

usage: ntSynt [-h] -d DIVERGENCE [-p PREFIX] [-k K] [-w W] [-t T] [--fpr FPR] [-b BLOCK_SIZE] [--merge MERGE] [--w_rounds W_ROUNDS [W_ROUNDS ...]] [--indel INDEL] [-n] [--benchmark] [-f] [--dev] [-v] fastas [fastas ...]

 

ntSynt: Multi-genome synteny detection using minimizer graphs

 

positional arguments:

  fastas                Input genome fasta files

 

optional arguments:

  -h, --help            show this help message and exit

  -d DIVERGENCE, --divergence DIVERGENCE

                        Approx. maximum percent sequence divergence between input genomes (Ex. -d 1 for 1% divergence).

                        This will be used to set --indel, --merge, --w_rounds, --block_size

                        See below for set values - You can also set any of those parameters yourself, which will override these settings.

  -p PREFIX, --prefix PREFIX

                        Prefix for ntSynt output files [ntSynt.k<k>.w<w>]

  -k K                  Minimizer k-mer size [24]

  -w W                  Minimizer window size [1000]

  -t T                  Number of threads [12]

  --fpr FPR             False positive rate for Bloom filter creation [0.025]

  -b BLOCK_SIZE, --block_size BLOCK_SIZE

                        Minimum synteny block size (bp)

  --merge MERGE         Maximum distance between collinear synteny blocks for merging (bp). 

                        Can also specify a multiple of the window size (ex. 3w)

  --w_rounds W_ROUNDS [W_ROUNDS ...]

                        List of decreasing window sizes for synteny block refinement

  --indel INDEL         Threshold for indel detection (bp)

  -n, --dry-run         Print out the commands that will be executed

  --benchmark           Store benchmarks for each step of the ntSynt pipeline

  -f, --force           Run all ntSynt steps, regardless of existing output files

  --dev                 Run in developer mode to retain intermediate files, log verbose output

  -v, --version         show program's version number and exit

 

Default parameter settings for divergence values:

< 1% divergence:    --block_size 500 --indel 10000 --merge 10000 --w_rounds 100 10

1% - 10% divergence:    --block_size 1000 --indel 50000 --merge 100000 --w_rounds 250 100

> 10% divergence:    --block_size 10000 --indel 100000 --merge 1000000 --w_rounds 500 250

If any of these parameters are set manually, those values will override the above.

 

If you have any questions about ntSynt, please create a GitHub issue: https://github.com/bcgsc/ntSynt

 

 

テスト

git clone https://github.com/bcgsc/ntSynt.git
cd ntSynt/
./run_ntSynt_demo.sh 

テストには線虫の染色体の一部が使われている。

 

実行方法

ゲノムを指定する。生のfastaファイルを受け付ける(gzip圧縮されているとエラーを起こす)。

ntSynt -d 5 assembly1.fa assembly2.fa assembly3.fa
  • -d    Approx. maximum percent sequence divergence between input genomes 

 

出力例

 

メインの出力ファイルは<prefix>.synteny_blocks.tsvで、このTSVファイルに計算されたシンテニーブロックが記録される。TSVの列は以下の通り。

  • synteny block ID - 同じIDを持つ行は同じsynteny blockの一部
  • ゲノムファイル名
  • ゲノム染色体/コンティグ
  • ゲノム開始座標
  • ゲノム終了座標
  • 染色体/コンティグ鎖
  • このシンテニブロックにマップされたミニマライザーの数
  • 前のシンテニーブロックとの不連続の理由

(マニュアルより)

 

その他

引用

Multi-genome synteny detection using minimizer graph mappings

Lauren Coombe,  Parham Kazemi,  Johnathan Wong,  Inanc Birol,  René L. Warren

bioRxiv, Posted February 13, 2024.