macでインフォマティクス

macでインフォマティクス

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

バクテリアのインテグロンを同定する IntegronFinder2

2024/02/28 コマンド修正

 

 インテグロンは柔軟な遺伝子交換プラットフォームであり、アクセサリー遺伝子をコードする複数のカセットを含み、その順序は特定のインテグラーゼによってシャッフルされる。移動性遺伝要素に組み込まれたインテグロンには、しばしば複数の抗生物質耐性遺伝子が含まれており、院内感染病原体の間で拡散し、現在の抗生物質耐性の危機の一因となっている。しかしほとんどのインテグロンはおそらく定常的であり、はるかに多様な機能をコードしている。IntegronFinderは、細菌ゲノム中の新規インテグロンを同定するために広く使われているソフトウェアであるが、古くなり、ドラフトゲノムやメタゲノムなどの非常に大きなデータセットを扱うための便利な機能を欠いている。ここでは、IntegronFinderバージョン2を紹介する。コードを更新し、効率と使いやすさを向上させ、不完全なゲノムデータにも対応できるようにした。これらの変更点を説明し、20,000以上の完全な塩基配列が決定されたゲノムのインテグロン分布を解析することで、このプログラムの妥当性を示す。また、この新しい機能を最大限に利用して、4000近いKlebsiella pneumoniaeゲノムを解析し、その中にインテグロンと抗生物質耐性遺伝子が存在するかどうかを調べた。その結果、K. pneumoniaeには多様なインテグロンが存在し、プラスミドのデータベースの中で最大の可動性インテグロンが存在することがわかった。これらのインテグロンのパンゲノムには合計165の異なる遺伝子ファミリーが含まれ、最も大きなファミリーのほとんどは多くの種類の抗生物質に対する耐性に関連している。

 

インテグロンは、インテグラーゼ(IntI)と、組換え結合部位(att)に挟まれた遺伝子カセットを含む、いくつかの遺伝的要素の集合体である(論文図1A)。インテグラーゼは、典型的なチロシンリコンビナーゼから進化して、折り畳まれた基質によってssDNAの組換えを仲介するようになった[ref.7]。チロシンリコンビナーゼとしては珍しいこの活性は、タンパク質のC末端に近い部分に余分なドメインがあることと関連しており[ref.7]、これによってIntIは他のインテグラーゼと容易に区別することができる[ref.8]。IntIは組換え部位(付着部位)と相互作用し、遺伝子カセットの切除や統合を引き起こす。

 

インストール

公開されているdocker imageを使ってテストした。

依存

  • Python >=3.10
  • Pandas >=2
  • Numpy >=1.26
  • Biopython >=1.82
  • Matplotlib >=3.8
  • colorlog
  • HMMER >=3.1b2,<=3.3.2
  • INFERNAL >=1.1.2,<=1.1.4
  • Prodigal >=2.6.2,<=V2.6.3

Github

#docker(hub)
docker pull gempasteur/integron_finder:2.0.3

pip(PyPI:環境を作って導入することが推奨されている)
python -m venv Integron_Finder
./Integron_Finder/bin/activate
pip install --user integron_finder==2.0.3

> integron_finder 

usage: integron_finder [-h] [--local-max] [--func-annot] [--cpu CPU]

                       [-dt DISTANCE_THRESHOLD] [--outdir OUTDIR]

                       [--union-integrases] [--cmsearch CMSEARCH]

                       [--hmmsearch HMMSEARCH] [--prodigal PRODIGAL]

                       [--path-func-annot PATH_FUNC_ANNOT] [--gembase]

                       [--gembase-path GEMBASE_PATH]

                       [--annot-parser ANNOT_PARSER] [--prot-file PROT_FILE]

                       [--attc-model ATTC_MODEL] [--evalue-attc EVALUE_ATTC]

                       [--calin-threshold CALIN_THRESHOLD]

                       [--keep-palindromes] [--no-proteins] [--promoter-attI]

                       [--max-attc-size MAX_ATTC_SIZE]

                       [--min-attc-size MIN_ATTC_SIZE] [--eagle-eyes] [--pdf]

                       [--gbk] [--keep-tmp] [--split-results]

                       [--circ | --linear] [--topology-file TOPOLOGY_FILE]

                       [--version] [--mute] [-v] [-q]

                       replicon

 

positional arguments:

  replicon              Path to the replicon file (in fasta format), eg :

                        path/to/file.fst or file.fst

 

options:

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

  --local-max           Allows thorough local detection (slower but more

                        sensitive and do not increase false positive rate).

  --func-annot          Functional annotation of CDS associated with integrons

                        HMM files are needed in Func_annot folder.

  --cpu CPU             Number of CPUs used by INFERNAL and HMMER. Increasing

                        too much (usually above 4) may decrease performance.

  -dt DISTANCE_THRESHOLD, --distance-thresh DISTANCE_THRESHOLD

                        Two elements are aggregated if they are distant of

                        DISTANCE_THRESH [4000]bp or less

  --outdir OUTDIR       Set the output directory (default: current)

  --union-integrases    Instead of taking intersection of hits from Phage_int

                        profile (Tyr recombinases) and integron_integrase

                        profile, use the union of the hits

  --cmsearch CMSEARCH   Complete path to cmsearch if not in PATH. eg:

                        /usr/local/bin/cmsearch

  --hmmsearch HMMSEARCH

                        Complete path to hmmsearch if not in PATH. eg:

                        /usr/local/bin/hmmsearch

  --prodigal PRODIGAL   Complete path to prodigal if not in PATH. eg:

                        /usr/local/bin/prodigal

  --path-func-annot PATH_FUNC_ANNOT

                        Path to file containing all hmm bank paths (one per

                        line)

  --gembase             Use gembase formatted protein file instead of

                        Prodigal. Folder structure must be preserved

  --gembase-path GEMBASE_PATH

                        path to the gembase root directory (needed only if the

                        replicon file is not locatedin gembase-path)

  --annot-parser ANNOT_PARSER

                        the path to the parser to use to get information from

                        protein file.

  --prot-file PROT_FILE

                        The path to the proteins file used for annotations

  --attc-model ATTC_MODEL

                        Path or file to the attc model (Covariance Matrix).

  --evalue-attc EVALUE_ATTC

                        Set evalue threshold to filter out hits above it

                        (default: 1)

  --calin-threshold CALIN_THRESHOLD

                        keep 'CALIN' only if attC sites number >= calin-

                        threshold (default: 2)

  --keep-palindromes    For a given hit, if the palindromic version is found,

                        don't remove the one with highest evalue.

  --no-proteins         Don't annotate CDS and don't find integrase, just look

                        for attC sites.

  --promoter-attI       Search also for promoter and attI sites. (default

                        False)

  --max-attc-size MAX_ATTC_SIZE

                        Set maximum value fot the attC size (default: 200bp)

  --min-attc-size MIN_ATTC_SIZE

                        set minimum value fot the attC size (default: 40bp)

  --eagle-eyes          Synonym of --local-max. Like a soaring eagle in the

                        sky, catching rabbits (or attC sites) by surprise.

  --circ                Set the default topology for replicons to 'circular'

  --linear              Set the default topology for replicons to 'linear'

  --topology-file TOPOLOGY_FILE

                        The path to a file where the topology for each

                        replicon is specified.

  --version             show program's version number and exit

  --mute                mute the log on stdout.(continue to log on

                        integron_finder.out)

 

Output options:

  --pdf                 For each complete integron, a simple graphic of the

                        region is depicted (in pdf format)

  --gbk                 generate a GenBank file with the sequence annotated

                        with the same annotations than .integrons file.

  --keep-tmp            keep intermediate results. This results are stored in

                        directory named tmp_<replicon id>

  --split-results       Instead of merging integron results from all replicon

                        in one file, keep them in separated files.

 

  -v, --verbose         Increase verbosity of output (can be cumulative : -vv)

  -q, --quiet           Decrease verbosity of output (can be cumulative : -qq)

 

 

 

実行方法

ゲノムのfastaファイルを指定する。環状ゲノム(--circ)か線状(ドラフト含む)ゲノムか(--linear)を指定する。イメージのv2.0.3を使用。

docker run -v $PWD:/home/IF -u $(id -u ${USER}):$(id -g ${USER}) gempasteur/integron_finder:2.0.3 --local-max --circ --keep-tmp --pdf NZ_CP016323.fna
  • --local-max    Allows thorough local detection (slower but more sensitive and do not increase false positive rate).
  • --circ    Set the default topology for replicons to 'circular'
  • --linear    Set the default topology for replicons to 'linear'
  • --cpu    Number of CPUs used by INFERNAL and HMMER. Increasing too much (usually above 4) may decrease performance. 
  • --pdf     For each complete integron, a simple graphic of the region is depicted (in pdf format)
  • --gbk    generate a GenBank file with the sequence annotated with the same annotations than .integrons file.
  • --keep-tmp    keep intermediate results. This results are stored in directory named tmp_<replicon id> 

 

出力例

contigごとにサブディレクトリが出来る。

<genome-name>.summary: 配列ごとのインテグロン数と種類が示されている。

CALINsは"clusters of attCs lacking an associated integron-integrase"のこと。

 

<genome-name>.integrons : 入力ファイル中の全配列から検出された全てのインテグロンとそのエレメントが示されている。

 

その他(論文より)

  • このプログラムは、HMMerを用いて隠れマルコフモデルのタンパク質プロファイルを用いてインテグラーゼを検索し、Infernalを用いて共分散モデルを用いてattC部位を検索する。これらと他の遺伝的構成要素、例えばプロモーターがDNA配列中に共局在していれば、それらがクラスタ化される。
  • IntegronFinder version1は完全長ゲノムを解析するように設計されていて、またPython 2(現在は非推奨)で書かれ、メンテナンスを容易にする最新のツールがないという点で老朽化が進んでいた。さらにくつかのアノテーションデータベースはもはや更新されていない。そこでIntegronFinder2は、不完全なゲノムデータの解析に適応し、時間の経過(およびソフトウェアメンテナンスのための資金不足)に耐える新しいバージョンとして、プログラムのリファクタリング、出力の変更、柔軟性の追加、参照データベースの更新を行った(主な変更点は論文図1E)。
  • --gbkを付けてランすると、見つかったすべてのアノテーションを含むGenbankファイルも作成される。
  • ローカルマシンにインストールせずにGalaxyのパスツールインスタンスでも使用できる。https://galaxy.pasteur.fr/root?tool_id=toolshed.pasteur.fr%2Frepos%2Fkhillion%2Fintegron_finder%2Fintegron_finder%2F2.0.1

引用

IntegronFinder 2.0: Identification and Analysis of Integrons across Bacteria, with a Focus on Antibiotic Resistance in Klebsiella
Bertrand Néron, Eloi Littner, Matthieu Haudiquet, Amandine Perrin, Jean Cury and Eduardo P. C. Rocha 

Microorganisms. 2022 Mar 24;10(4):700

 

Identification and analysis of integrons and cassette arrays in bacterial genomes
Jean Cury 1, Thomas Jové 2, Marie Touchon 3, Bertrand Néron 4, Eduardo Pc Rocha 

Nucleic Acids Res. 2016 Jun 2;44(10):4539-50