macでインフォマティクス

macでインフォマティクス

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

リファレンスフリーで(メタ)ゲノムアセンブリのミスアセンブリの同定・修正を行う metaMIC

 

 メタゲノムアセンブリの品質を評価することは、信頼性の高いメタゲノムアセンブリゲノムを構築し、下流の解析を行う上で重要である。ここでは、メタゲノムアセンブリのミスアセンブリを特定し、修正するための機械学習ベースのツールであmetaMIC (https://github.com/ZhaoXM-Lab/metaMIC)を紹介する。模擬データと実データを用いたベンチマークの結果、metaMICはミスアセンブルされたコンティグを特定する際に既存のツールよりも優れた性能を発揮することがわかった。metaMICはミスアセンブルブレークポイントローカライズすることができ、ミスアセンブルブレークポイントで分割してミスアセンブルを修正することで、下流のスキャフォールドやビニングの結果を改善することができる。

 

インストール

Github

mamba create -n metamic python=3.9 -y
conda activate metamic
mamba install pandas numpy pysam biopython -y
mamba install -c bioconda samtools bwa jellyfish

#本体
git clone https://github.com/ZhaoXM-Lab/metaMIC.git
cd metaMIC/
python setup.py install

#errorが出たので追加で導入
pip install joblib requests scikit-learn

> metaMIC -h

$ metaMIC

usage: metaMIC [-h]  ...

 

Reference-free Misassembly Identification and Correction of metagenomic

assemblies

 

optional arguments:

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

 

metaMIC subcommands:

  

    download_model

                   download model

    extract_feature

                   Extract features from inputs.

    predict        Predict.

    train          Train model.

> metaMIC predict -h

usage: metaMIC predict [-h] -o OUTPUT -m MODE -c ASSEMBLIES [-a ASSEMBLER]

                       [-l MIN_LENGTH] [-s SPLIT_LENGTH] [--nb BREAK_COUNT]

                       [--rb BREAK_RATIO] [--at ANOMALY_THRED]

 

optional arguments:

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

  -o OUTPUT, --output OUTPUT

                        output directory for AIM results

  -m MODE, --mode MODE  Applied to single genomic/metagenomic assemblies

                        [meta/single]

  -c ASSEMBLIES, --contig ASSEMBLIES

                        fasta file of assembled contigs

  -a ASSEMBLER, --assembler ASSEMBLER

                        The assembler-specific model or user-trained model

                        used for assembled fasta file [MEGAHIT/IDBA_UD/[new

                        training model specified by users]]

  -l MIN_LENGTH, --mlen MIN_LENGTH

                        Minimum contig length [default: 5000bp]

  -s SPLIT_LENGTH, --slen SPLIT_LENGTH

                        Minimum length of splitted fragments [default: 1000bp]

  --nb BREAK_COUNT      Threshold of read breakpoint counts for correcting

                        misassemblies in metagenomics

  --rb BREAK_RATIO      Threshold of read breakpoint ratio for correcting

                        misassemblies in metagenomics

  --at ANOMALY_THRED    Threshold of anomaly score for correcting

                        misassemblies in metagenomics

 > metaMIC train -h

usage: metaMIC train [-h] -o OUTPUT [--label LABEL] [-a ASSEMBLER]

                     [-t THREADS]

 

optional arguments:

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

  -o OUTPUT, --output OUTPUT

                        output directory for AIM results

  --label LABEL         Misassembly label of contigs for training assemblies

  -a ASSEMBLER, --assembler ASSEMBLER

                        The name of the directory of the trained model.

  -t THREADS, --threads THREADS

                        Maximum number of CPUs [default: 8]

 

 

データベース

metaMIC download_model

 

テストラン

cd example
sh download.sh
metaMIC extract_feature --pileup R.sphaeroides_pileup.out --bam R.sphaeroides.bam -c velvet_ctg.fasta -m single -o test
metaMIC predict -c velvet_ctg.fasta -o test -m single

出力

f:id:kazumaxneo:20210626223902p:plain

misassembly_breakpoint.txt

f:id:kazumaxneo:20210626223947p:plain

Misassembly scoreファイル

f:id:kazumaxneo:20210626230100p:plain

misassembly breakpointsが修正されたcontig ファイルがmetaMIC_corrected_contigs.faになります。(出力されるファイルについてはGithub参照)

contig配列数、contig配列長

f:id:kazumaxneo:20210626225905p:plain

 

 

実行方法

1, mapping

bwa index metatgenome_asm.fasta
bwa mem -a -t 16 metatgenome_asm.fa pair_R* | samtools view -h -q 10 -m 50 -F 4 -b | samtools sort > map.bam

samtools mpileup -C 50 -A -f metatgenome_asm.fa map.bam | awk '$3 != "N"' > pileup_file

 

2, mapping

#metagenome
metaMIC extract_feature --bam map.bam -c metatgenome_asm.fa -o output_dir --pileup pileup_file -m meta
metaMIC predict -c metatgenome_asm.fa -o output_dir -a MEGAHIT -m meta

#isolate genome
metaMIC extract_feature --bam map.bam -c asm.fa -o output_dir --pileup pileup_file -m single
metaMIC predict -c asm.fa -o output_dir -m single

 

mock assemblyを使った時の結果

f:id:kazumaxneo:20210627005450p:plain

 

新しいデータセットで利用するため、新規のトレーニングモデルを生成することもできます。レポジトリにアクセスして確認して下さい。

引用

metaMIC: reference-free Misassembly Identification and Correction of de novo metagenomic assemblies

Senying Lai, Shaojun Pan, Luis Pedro Coelho, Wei-hua Chen, Xing-Ming Zhao

Posted June 23, 2021