macでインフォマティクス

macでインフォマティクス

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

高速なONTロングリードの前処理ツール nanoq

 

 基本的なシーケンス品質管理とサマリー統計の計算は、リードをパースするのがボトルネックになることにより少し時間がかかる場合がある。Nanoq は、needletail および rust-bio ライブラリを使用した fastx ファイルに対して、欠陥のあるサマリー統計情報とフィルタリングのためのシングルパス操作、または Filtlong と同様のフィルタリング手法を可能にするツーパス操作のいずれかで、これらの操作を実行する。

 

 

インストール

Github

#cargo
cargo install nanoq

#conda
conda install -c conda-forge -c esteinig nanoq=0.2.1

#docker
docker pull esteinig/nanoq:latest

#Singularity
singularity pull docker://esteinig/nanoq:latest

> nanoq -h

$ nanoq -h

nanoq 0.2.1

 

Fast quality control and summary statistics for nanopore reads

 

USAGE:

nanoq [FLAGS] [OPTIONS]

 

FLAGS:

-c, --crab Rust-Bio parser (fastq only) [false]

-d, --detail Print detailed read summary [false]

-h, --help Prints help information

-V, --version Prints version information

 

OPTIONS:

-b, --keep_bases <BASES> Keep reads with best quality bases [0]

-f, --fastx <FASTX> Fastx input file [-]

-m, --max_length <MAXLEN> Maximum sequence length [0]

-l, --min_length <MINLEN> Minimum sequence length [0]

-o, --output <OUTPUT> Fastx output file [-]

-p, --keep_percent <PERCENT> Keep best percent quality bases [0]

-q, --min_quality <QUALITY> Minimum average sequence quality [0]

-t, --top <TOP> Print <top> length + quality reads [5]

 

 

実行方法

fastqまたはfastaのシークエンシングリードを指定する(ワンパスなので高速)。

例えば1000-bp以上、平均クオリティが10以上のリードのみ出力。

cat input.fq | nanoq -l 1000 -q 10 > reads.fq

#gzipped fastq
cat input.fq.gz | nanoq -l 1000 -q 10 > reads.fq
  • -l     Minimum sequence length [0]
  • -q    Minimum average sequence quality [0]

 

品質でソートされたリード(--keep_percent)を使用してクオリティが悪い20%の塩基を除去するか、または約500Mbpが残るまでクオリティが悪い品質のリード(--keep_bases)を減らす(拡張2パスフィルタリングでワンパスより時間がかかる)。

nanoq -f test.fq -p 80 -b 500000000 > reads.fq
  • -p    Keep best percent quality bases [0]
  • -b    Keep reads with best quality bases [0]
  • -f     Fastx input file [-]

 

ほかにもいくつかの使用例がある。Githubを確認して下さい。

引用

GitHub - esteinig/nanoq: Minimal but speedy quality control for nanopore reads in Rust