macでインフォマティクス

macでインフォマティクス

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

ドラフトアセンブリをショートリードやロングリードでpolishする NextPolish

 

2021 7/26 link追加、タイトル変更

 

 ロングリードシーケンシング技術は長い連続性を持つゲノムを生成できるが、エラー率が高くなる。 そこで、長いリードでアセンブリされたゲノムの配列エラーを効率的に修正するツールであるNextPolishを開発した。 この新しいツールは、高品質のショートリードからK-merをスコアリングおよびカウントし、多数のベースエラーを含むゲノムアセンブリを洗練するように設計された2つの相互リンクモジュールで構成されている。NextPolishは、ヒトおよび植物(Arabidopsis thaliana)のゲノムを使用して速度と効率を評価すると、シーケンスエラーをより速く、より高い修正精度で修正することでPilonよりも優れていた。NextPolishはCおよびPythonで実装されている。 ソースコードhttps://github.com/Nextomics/NextPolishから入手できる。

 

約15〜10%のシーケンスエラーの生の第3世代シーケンス(TGS)ロングリードを修正するにはNextDenovoを使用する。

 

Documentation

 

 

インストール

ubuntu18.04LTSにて、python2の環境を作ってテストした。

依存

  • Python 2.7
  • Psutil
  • Drmaa (Only required by running under non-local system)
  • time (apt install time)

本体 Github

#python2環境に入れる。condaを使っているなら
conda create -y -n python2 python=2.7
conda activate python2
conda install -c anaconda psutil drmaa

#本体
wget https://github.com/Nextomics/NextPolish/releases/download/v1.1.0/NextPolish.tgz  
tar -vxzf NextPolish.tgz
cd NextPolish
make -j

./nextPolish -h

# ./nextPolish -h

usage: nextPolish [-l FILE] [-v] [-h]

 

nextDenovo:

Fast and accurately polish the genome generated by noisy long reads

 

exmples:

nextPolish run.cfg

 

optional arguments:

  -l FILE, --log FILE  log file (default: log.info)

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

  -h, --help           please use the config file to pass parameters

 

テストラン

nextPolish test_data/run.cfg

[INFO] 2020-03-01 13:34:35,457 merge_bam done

[INFO] 2020-03-01 13:34:35,467 analysis tasks done

[INFO] 2020-03-01 13:34:35,477 total jobs: 2

[INFO] 2020-03-01 13:34:35,478 Throw jobID:[1737] jobCmd:[/data/NextPolish/test_data/01_rundir/02.kmer_count/05.polish.ref.sh.work/polish_genome0/nextPolish.sh] in the local_cycle.

[INFO] 2020-03-01 13:34:35,982 Throw jobID:[1750] jobCmd:[/data/NextPolish/test_data/01_rundir/02.kmer_count/05.polish.ref.sh.work/polish_genome1/nextPolish.sh] in the local_cycle.

[INFO] 2020-03-01 13:34:36,995 polish_genome done

[INFO] 2020-03-01 13:34:36,996 nextPolish has finished, and final polished genome files:

[INFO] 2020-03-01 13:34:36,996  /data/NextPolish/test_data/./01_rundir/02.kmer_count/*polish.ref.sh.work/polish_genome*/genome.nextpolish.part*.fasta 

 

実行方法

#Prepare sgs_fofn、2つ分のペアエンドfastqがあるなら
ls reads1_R1.fq reads1_R2.fq reads2_R1.fq reads2_R2.fq > sgs.fofn

#Create run.cfg
genome=input.genome.fa
echo -e "task = 1212\ngenome = $genome\nsgs_fofn = sgs.fofn" > run.cfg

#Run
nextPolish run.cfg

#Finally polished genome
cat 03.kmer_count/*polish.ref.sh.work/polish_genome*/genome.nextpolish.part*.fasta > input.genome.nextpolish.v2.fa

 

チュートリアルでは、ショートリードだけ、ロングリードだけ、ショート・ロング両方を使ったdraft assemblyのpolishing手順が説明されています。

https://nextpolish.readthedocs.io/en/latest/TUTORIAL.html#polishing-using-long-reads-only

引用
NextPolish: a fast and efficient genome polishing tool for long read assembly

Hu J, Fan J, Sun Z, Liu S

Bioinformatics. 2019 Nov 28. pii: btz891

 

2021 

こちらの論文でナノポアのリードの修正に使われています。

https://www.nature.com/articles/s41438-020-00455-1