macでインフォマティクス

macでインフォマティクス

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

原核生物のゲノムアセンブリでキメラや汚染を調べる GUNC

2021 1/18 解析例追加

2021 6/15 論文引用

2022/06/16 コマンド更新、10/13 追記

 

 ゲノムは原核生物の系統の遺伝的青写真であり、現在進行中の微生物世界のセンサスの中心にある微生物学の基本単位であり、微生物の生態と進化の研究に不可欠なものである。1995年に細菌の完全なゲノムが初めて公開されてから25年が経ち [ref.5]、70万以上の原核生物のゲノムがNCBI GenBank [2020年7月30日アクセス]に寄託されており、ゲノムベースの解析が微生物学の多くの分野のバックボーンとなって、毎年ほぼ倍増している。歴史的に、微生物ゲノムの大部分は、ゲノム配列を物理的なサンプルに直接リンクさせた培養単離物から得られてきたが、容易に培養できないかなりの数の種は除外されていた[ref.4,6]。
 この不足を克服するための有望なアプローチが、メタゲノムデータを用いた複雑な微生物群集からのゲノム解析である。早くも2004年にはほぼ完全なメタゲノムアセンブルゲノム(MAG)が、酸性鉱山排水の微生物バイオフィルムの多様性を示すために使用された[ref.7]。それ以来、キャノピークラスタリング、CONCOCT、MaxBin、ABAWACA、metaBATなどのビニングツールのアルゴリズムの進歩により、大規模なスケールでのMAGの自動回収が可能となり、現在では個々の研究で数万の新規ゲノムが日常的に報告されるようになった[ref.13-15]。MAGは、これまで培養ベースのアプローチでは難しかった深い分岐系統の発見につながり、Asgardarchaeota[ref.16]や細菌の候補門[ref.11,17]など、微生物の生命のツリーを大幅に拡大した。さらに、MAGは系統レベルまで分類学的に分解(resolve)することができる。これは、リファレンスゲノムのカバレッジが乏しいサンプル不足の環境では特に有益である。多くの微生物学分野の解析が高品質のゲノムに決定的に依存するようになったため、膨大な量のゲノムデータが蓄積され、自動化された迅速かつ正確な品質評価が必要とされている。ゲノムのかなりの部分は、専用のデータベース(Refseq など)で高品質とされているものであっても、in vitroとin silicoの両方に由来する可能性のある外来ゲノム断片を含んでいる(論文図1a)。単離株由来のゲノムのエラーは、通常、物理的なサンプル処理中に、例えば試薬や培地の汚染などにより発生する[ref.25]。対照的に、MAGにおける主なエラーの原因は計算上のものと考えられている[ref.22]。すなわち、ミスアセンブリ(複数のソースからのゲノム断片が誤ってアセンブリされ、キメラコンティグになる)とミスビニング(異なるソースからの連続した断片が誤って同じゲノムビンに割り当てられ、キメラゲノムになる)である。これら2つのうち、ミスビニングは比較的まれなミスアセンブリであることから、ミスビニングが主なエラーの原因となると予想されている[ref.26]。ゲノムの品質は、主に断片化(すなわち、アセンブリされたコンティグのサイズ分布、クローズド(閉じた)のゲノムが最適)、完全性(正しく取り込まれているソースゲノムの割合)、コンタミネーション(他のソースに由来する余剰ゲノム断片)に基づいて評価され、BUSCOやCheckMのようなツールを使用して、ユビキタスおよび single-copy marker genes (SCGs)に基づいて推定されることが多い。
 不正確なゲノムは解析に異なる方法で影響を与える可能性がある。断片化されたゲノムや不完全なゲノムに含まれる遺伝的要素の欠落や切り捨てによって生じるタイプIIのエラーは通常軽減されるが、汚染された断片はゲノムの機能的レパートリーや構造について誤った推論を引き起こす可能性があるため、生物学的解釈には有害である[ref.22,25]。操作上、ゲノム汚染には2つのタイプがある(論文図1b)。冗長な汚染は、関連するソース(多くの場合、同一系統または関連系統内)からの余剰ゲノム断片(例えば、焦点のゲノムに既に存在する遺伝子ファミリーからの遺伝子)を伴う。対照的に、非冗長コンタミネーションは、ソースゲノムの一部を関連のない重なりのない物質で置換または拡張する外来断片(例えば、焦点のゲノムの系統にコードされていない遺伝子ファミリー)を含み、キメラゲノムをもたらす。直感的には、冗長コンタミネーションは「同じものがより多く」追加されたものと考えることができ、非冗長コンタミネーションは「新しいもの」を追加したものと考えることができる。

 ゲノム汚染の推定は、特に既存の文献では十分に表現されていない、系統的に新規な系統の場合には困難な場合がある。設計上、ゲノム品質のSCGベースの推定値は、冗長な汚染を高感度で検出することができるが、個々の遺伝子間の対立する系統割り当てには不可知でありながら、全体として予想されるSCGのインベントリのみを考慮するため、非冗長な汚染に対しては感度が低くなる[ref.28,29]。広く使われているCheckMアルゴリズム[ref.28]は、最初にクエリゲノムをリファレンス系統に配置し、その後、ゲノムの完全性とコンタミネーションを推定するために期待されるSCGのクレード特異的なセットを定義する。しかし、無関係な系統のゲノムキメラの場合、系統配置はより保守的になり、ルートに近くなり、コンセンサスSCGの範囲が制限される:極端なルートレベルの配置の場合、品質の推定は、平均的な原核生物ゲノムのわずか1-2%でしかない43個の近い普遍的な遺伝子のみに基づく。さらに、系統特異的なSCG、特に系統的に深いルートを持つSCGは、ゲノム全体に均等に分布しているのではなく、局所的にクラスター化されていることが多く、さらに問い合わせゲノムの表現が制限される。このような偏った品質推定値は生物学的解釈に有害な影響を与える可能性がある。これは、新規の深い分岐系統のRokubacteriaで実証されており[ref.29]、さらに最近では手動でキュレーションしたヒトの腸由来のMAGの場合にも実証されている[ref.22]。その結果、SCGインベントリをゲノム品質の排他的な推定値として使用することは、特に大規模な自動化されたゲノムビニング[ref.22]のコンテキストでは疑問視されてきた。
 ここでは、完全に統合されたワークフローであるGUNC(Genome UNClutterer)を紹介する。様々なシミュレーションシナリオにおいて、GUNCが高感度でゲノム汚染を正確に定量化し、ゲノムビン内の問題のあるコンティグをピンポイントで特定できることを実証した。さらに、GenBank、Genome Taxonomy Database、最近発表された大規模MAGデータセット[ref.13-15]では、コンティグのミスビニングが系統的多様性と分類学的新規性の推定値を膨らませているキメラゲノムのかなりの部分を特定した。GUNCのソースコードはGPLv3ライセンスで https://github.com/grp-bork/gunc から入手可能である。

 

GUNC Documentation

https://grp-bork.embl-community.io/gunc/index.html

GUNCは、ゲノム中の分類学的に注釈されたすべての遺伝子に基づいて遺伝子汚染を評価する。

 

 

インストール

condaで仮想環境を作ってテストした。

Github

#bioconda (link)
mamba create -n gunc python=3.8 -y
conda activate gunc
mamba install -c bioconda gunc -y

#pip (pypi)
pip install gunc

gunc -h

$ gunc -h

usage: gunc [-h] [-v]  ...

 

Tool for detection of chimerism and contamination in prokaryotic genomes.

 

optional arguments:

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

  -v, --version  Print version number and exit.

 

GUNC subcommands:

  

    run          Run chimerism detection.

    download_db  Download GUNC db.

    merge_checkm

                 Merge GUNC and CheckM outputs.

    plot         Create interactive visualisation.

gunc run -h

$ gunc run -h

usage: gunc run [-h] [-r] [-i] [-f] [-d] [-e] [-g] [-t] [-o] [--temp_dir] [--sensitive] [--detailed_output] [--use_species_level] [--min_mapped_genes]

 

optional arguments:

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

  -r , --db_file       DiamondDB reference file. Default: GUNC_DB envvar

  -i , --input_fna     Input file in FASTA fna format.

  -f , --input_file    File with paths to FASTA fna format files.

  -d , --input_dir     Input dir with files in FASTA fna format.

  -e , --file_suffix   Suffix of files in input_dir. Default: .fa

  -g , --gene_calls    Input genecalls FASTA faa format.

  -t , --threads       number of CPU threads. Default: 4

  -o , --out_dir       Output dir. Default: cwd

  --temp_dir           Directory to store temp files. Default: cwd

  --sensitive          Run with high sensitivity. Default: False

  --detailed_output    Output scores for every taxlevel. Default: False

  --use_species_level  Allow species level to be picked as maxCSS. Default: False

  --min_mapped_genes   Dont calculate GUNC score if number of mapped genes is below this value. Default: 11

gunc download_db -h

$ gunc download_db -h

usage: gunc download_db [-h] dest_path

 

positional arguments:

  dest_path   Download database to given direcory.

 

optional arguments:

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

gunc merge_checkm -h

$ gunc merge_checkm -h

usage: gunc merge_checkm [-h] -g  -c  [-o]

 

optional arguments:

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

  -g , --gunc_file     Path of GUNC.maxCSS_level.tsv file.

  -c , --checkm_file   CheckM output file

  -o , --out_dir       Output directory for merged file

gunc plot -h

$ gunc plot -h

usage: gunc plot [-h] -d  [-g] [-o] [-t] [-r] [-c]

 

optional arguments:

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

  -d , --diamond_file   GUNC diamond outputfile.

  -g , --gunc_gene_count_file 

                        GUNC gene_counts.json file.

  -o , --out_dir        Output directory.

  -t , --tax_levels     Tax levels to display (comma-seperated).

  -r , --remove_minor_clade_level 

                        Tax level at which to remove minor clades.

  -c , --contig_display_num 

                        Number of contigs to visualise.

 

データベースの準備

初回はデータベースをダウンロードする。13GBほどある。

mkdir guncDB
gunc download_db guncDB/

f:id:kazumaxneo:20210116235618p:plain

 

実行方法

1、GUNCのラン。genomeのfastaファイルとデータベースを指定する。

gunc run -i genome.fa -t 20 -r guncDB/gunc_db_progenomes2.1.dmnd

#複数ゲノム
gunc run -d genome_dir -t 20 -e fa -r guncDB/gunc_db_progenomes2.1.dmnd
  • -r   DiamondDB reference file. Default: GUNC_DB envvar
  • -i    Input file in FASTA fna format.
  • -f    File with paths to FASTA fna format files.
  • -d   Input dir with files in FASTA fna format.
  • -t   number of CPU threads. Default: 4
  • -t   number of CPU threads. Default: 4
  • -o   Output dir. Default: cwd
  • --sensitive   Run with high sensitivity. Default: False
  • -e   Suffix of files in input_dir. Default: .fa

複数ゲノム指定している場合、ゲノムごとにファイルが出力される。

f:id:kazumaxneo:20210118120258p:plain

 

2、結果の視覚化。GUNCのランで得られたdiamond outputファイルを指定する。

gunc plot -d genome.diamond.out -g gene_counts.json
  • -d     GUNC diamond outputfile.
  • -g     GUNC gene_counts.json file.
  • -o     Output directory.

 

f:id:kazumaxneo:20210118120120p:plain

 

 

引用

GUNC: Detection of Chimerism and Contamination in Prokaryotic Genomes

Askarbek Orakov, Anthony Fullam, Luis Pedro Coelho, Supriya Khedkar, Damian Szklarczyk, Daniel R Mende, Thomas SB Schmidt, Peer Bork

bioRxiv, Posted December 16, 2020

 

2021 6/15

GUNC: detection of chimerism and contamination in prokaryotic genomes

Askarbek Orakov, Anthony Fullam, Luis Pedro Coelho, Supriya Khedkar, Damian Szklarczyk, Daniel R. Mende, Thomas S. B. Schmidt & Peer Bork
Genome Biology volume 22, Article number: 178 (2021)

 

関連