2020 2/7 パラメータエラー修正、2/8 わかりにくい表現を修正、3/12 わかりにくい説明を修正
2021 1/5 論文引用、9/8 関連研究のリンク追記
2023/04/12 コマンド微修正(.pl削除)
ナノポアのロングリードはde novoゲノムアセンブリで有利だが、ゲノム研究への適用は、これらロングリードの複雑なエラーによって依然として妨げられている。 ここでは、ナノポアのリードの複雑なエラーを克服するために設計されたエラー修正およびde novoアセンブリツールであるNECATを開発した。 Nanoporeのリードを高精度にすばやく修正するために、 adaptive read selection and two-step progressive methodを提案した。 Nanoporeリードの全長を利用するために、2段階アセンブラを導入した。 NECATは、エラー修正とNanoporeリードのde novoアセンブリの両方で優れたパフォーマンスを実現する。 NECATは、35Xカバレッジのヒトゲノムをアセンブルするのに7,225 CPU時間しか必要とせず、NG50で2.28倍の改善を達成する。 さらに、ヒトWERI細胞株のアセンブリでは、29 MbpのNG50が示された。 Nanoporeリードの高品質なアセンブリにより、構造変化の検出における偽陽性を大幅に減らすことができる。
インストール
ubuntu19.04の計算機を使ってテストした。
Sucessfully tested on
本体 Github
#linux向けバイナリ
wget https://github.com/xiaochuanle/NECAT/releases/download/SourceCodes20200119/necat_20200119_Linux-amd64.tar.gz
tar xzvf necat_20200119_Linux-amd64.tar.gz
cd NECAT/Linux-amd64/bin
#パスを通す
export PATH=$PATH:$(pwd)
#conda 2022/06/02
mamba create -n necat -y
conda activate necat
mamba install -c bioconda necat -y
> necat
Usage: necat correct|assemble|bridge|config cfg_fname
correct: correct rawreads
assemble: generate contigs
bridge: bridge contigs
config: generate default config file
実行方法
1、デフォルトパラメータのコンフィグファイル作成
以下のコマンドを打つとデフォルトパラメータのコンフィグファイルが作成される。
necat config config.txt
> cat config.txt
PROJECT=
ONT_READ_LIST=
GENOME_SIZE=
THREADS=4
MIN_READ_LENGTH=3000
PREP_OUTPUT_COVERAGE=40
OVLP_FAST_OPTIONS=-n 500 -z 20 -b 2000 -e 0.5 -j 0 -u 1 -a 1000
OVLP_SENSITIVE_OPTIONS=-n 500 -z 10 -e 0.5 -j 0 -u 1 -a 1000
CNS_FAST_OPTIONS=-a 2000 -x 4 -y 12 -l 1000 -e 0.5 -p 0.8 -u 0
CNS_SENSITIVE_OPTIONS=-a 2000 -x 4 -y 12 -l 1000 -e 0.5 -p 0.8 -u 0
TRIM_OVLP_OPTIONS=-n 100 -z 10 -b 2000 -e 0.5 -j 1 -u 1 -a 400
ASM_OVLP_OPTIONS=-n 100 -z 10 -b 2000 -e 0.5 -j 1 -u 0 -a 400
NUM_ITER=2
CNS_OUTPUT_COVERAGE=30
CLEANUP=1
USE_GRID=false
GRID_NODE=0
GRID_OPTIONS=
SMALL_MEMORY=0
FSA_OL_FILTER_OPTIONS=
FSA_ASSEMBLE_OPTIONS=
FSA_CTG_BRIDGE_OPTIONS=
POLISH_CONTIGS=true
ランするために以下のように編集した(赤字部分)。"read_list.txt"はリードのパスを示したテキスト。下の説明参照。
> cat config.txt
PROJECT=Arabidopsis
ONT_READ_LIST=read_list.txt
GENOME_SIZE=130000000
THREADS=40
MIN_READ_LENGTH=3000
PREP_OUTPUT_COVERAGE=40
OVLP_FAST_OPTIONS=-n 500 -z 20 -b 2000 -e 0.5 -j 0 -u 1 -a 1000
OVLP_SENSITIVE_OPTIONS=-n 500 -z 10 -e 0.5 -j 0 -u 1 -a 1000
CNS_FAST_OPTIONS=-a 2000 -x 4 -y 12 -l 1000 -e 0.5 -p 0.8 -u 0
CNS_SENSITIVE_OPTIONS=-a 2000 -x 4 -y 12 -l 1000 -e 0.5 -p 0.8 -u 0
TRIM_OVLP_OPTIONS=-n 100 -z 10 -b 2000 -e 0.5 -j 1 -u 1 -a 400
ASM_OVLP_OPTIONS=-n 100 -z 10 -b 2000 -e 0.5 -j 1 -u 0 -a 400
NUM_ITER=2
CNS_OUTPUT_COVERAGE=30
CLEANUP=1
USE_GRID=false
GRID_NODE=0
GRID_OPTIONS=
SMALL_MEMORY=0
FSA_OL_FILTER_OPTIONS=
FSA_ASSEMBLE_OPTIONS=
FSA_CTG_BRIDGE_OPTIONS=
POLISH_CONTIGS=true
もう1つ、リードのパスを示したファイル”read_list.txt”を準備する。suffixをチェックされるので”.txt"をつける。findで作るなら以下のように
find ./ONT_fastq/nanopore*gz -type f > read_list.txt
相対パスになるが、カレントからランするならこれでO.K(違うならフルパスで)
補足;使えるシーケンスデータは、ロングリードの rawまたはgzipedのfastqとfast。また.fqだとエラーになる。.fastqにした。
2、error correction
作成したconfigファイルを指定する。
necat correct config.txt
指定したproject name、ここではArabidopsis/に結果の1-consensus/cns_final.fasta.gzが出力される。 全てのリードがエラー修正されるわけではない点に注意(Github参照)。
3、Assembly
以下のコマンドを打つ。自動で1の出力を認識してアセンブリが開始される。
necat assemble config.txt
4-fsaに中間ファイルやcontigs.fasta、polished_contigs.fastaが出力される。
4、Bridging
necat bridge config.txt
6-bridge_contigs/bridged_contigs.fasta が出力される。
計算機クラスタでランするためのオプションも用意されています。 Githubで確認して下さい。
感想
リファレンスのあるナズナのONTリードを使ってテストしたところ、Flyeと同じくらいの連続性と精度を持った配列が出力されていました。
(データの質や生物種によって傾向は変わる可能性があります)
引用
Fast and accurate assembly of Nanopore reads via progressive error correction and adaptive read selection
Ying Chen, Fan Nie, Shang-Qian Xie, Ying-Feng Zheng, Thomas Bray, Qi Dai, Yao-Xin Wang, Jian-feng Xing, Zhi-Jian Huang, De-Peng Wang, Li-Juan He, Feng Luo, Jian-Xin Wang, Yi-Zhi Liu, Chuan-Le Xiao
bioRxiv preprint first posted online Feb. 2, 2020
2021 1/5
Efficient assembly of nanopore reads via highly accurate and intact error correction
Ying Chen, Fan Nie, Shang-Qian Xie, Ying-Feng Zheng, Qi Dai, Thomas Bray, Yao-Xin Wang, Jian-Feng Xing, Zhi-Jian Huang, De-Peng Wang, Li-Juan He, Feng Luo, Jian-Xin Wang, Yi-Zhi Liu & Chuan-Le Xiao
Nature Communications volume 12, Article number: 60 (2021)
関連
2021 9/8
バナナゲノムのT2Tアセンブリ(バージョン4アセンブリ)の報告。ONTのリードも使用されていて、いくつかのアセンブラを検討した結果、NECATが一次アセンブリに使用されています(Supplementary Table.8に比較結果)。
2022/06/05
PacbioとNanoporeのリードを使った比較論文。NECATとNextDenovoが良いパフォーマンスを示しています(Table.S2)。