ウィルス感染症では、共同感染や宿主内での進化により、複数の関連するウィルス株が存在することが多い。HaploflowはdeBruijnグラフをベースにしたアセンブラで、新しいフローアルゴリズムを用いて混合されたシークエンシングサンプルからウイルスの株レベルde novoゲノムアセンブリを行う。Haploflowは、複雑さを増した複数のベンチマークデータセットで評価し、ウイルスハプロタイプアセンブラや、株の再構築を目的としない一般的なメタゲノムアセンブラよりも高速かつ高精度であることを示している。Haploflowは、患者のHCMVサンプルやSARS-CoV-2の廃液サンプルから、臨床分離株と同じウイルス株ゲノムを再構築することを示している。
インストール
ビルド依存
- CMake >= 2.8
- Boost >= 1.54
#conda (link)
mamba create -n haploflow -y
conda activate haploflow
mamba install -c bioconda haploflow -y
> haploflow
$ haploflow
HaploFlow parameters:
--help Produce this help message
--read-file arg read file (fastq)
--dump-file arg deBruijn graph dump file produced by HaploFlow
--log arg log file (default: standard out)
--k arg (=41) k-mer size, default 41, please use an odd number
--out arg folder for output, will be created if not present. WARNING: Old results will get
overwritten
--error-rate arg (=0.0199999996) percentage filter for erroneous kmers -
kmers appearing less than relatively e% will be ignored
--create-dump arg create dump of the deBruijn graph. WARNING: This file may be huge
--from-dump arg run from a Haploflow dump of the deBruijn
graph.
--two-strain arg (=0) mode for known two-strain mixtures
--strict arg (=1) more strict error correction, should be set to 5 in first run on new data set to reduce
run time. Set to 0 if low abundant strains are expected to be present
--filter arg (=500) filter contigs shorter than value
--thresh arg (=-1) Provide a custom threshold for complex/bad data
実行方法
3つのHIV株のリードを集めた小さなテストデータセットが用意されている。haploflow をランするには、入力リードを"--read-file"オプションで指定し、出力ディレクトリを"--out"オプションで指定する。
git clone https://github.com/hzi-bifo/Haploflow.git
cd Haploflow/
haploflow --read-file HIV_3_toy.fq --out test --log test/log --k 41
- --log log file (default: standard out)
- --out folder for output, will be created if not present. WARNING: Old results will get
- --read-file read file (fastq)
- --k k-mer size, default 41, please use an odd number (41)
- --error-rate percentage filter for erroneous kmers -kmers appearing less than relatively e% will be ignored (0.0199999996)
- --strict more strict error correction, should be set to 5 in first run on new data set to reduce (1)
- --thresh Provide a custom threshold for complex/bad data (-1)
- --filter filter contigs shorter than value (500)
出力
Githubより
- デブルイグラフのk-merサイズであるkはデフォルトでは41だが、この値を大きくすると、リード長が大きい場合や、非常に深いシーケンスを実行した場合に、アセンブリーが改善される可能性がある。
- error-rateは異なる株のカバレッジまたは検出限界の下限を決定するもので、パーセンテージ値である。デフォルトではこの値は0.02に設定されているが、これはイルミナのデータではエラーが2%未満であると予想されるためである。この値を低く設定しすぎると、Haploflowの動作が非常に遅くなる。高く設定しすぎると、Haploflowがより少ない量の菌株を見つけられなくなる。
- strictパラメータは、リードカバレッジの全体的な下限を決定する。1に設定すると制約はなく、0に設定するとカバレッジヒストグラムの変曲点を使用し、1以上の値を設定するとカバレッジヒストグラム上のスライディングウィンドウを使用して下限値を決定する。
- エラー補正パラメータはthreshは、strictパラメータとは相互に排他的で、設定された場合はその値を上書きする。このパラメータは、それ以下のk-merが無視される固定の閾値を設定する。
- Haploflowはデフォルトで500bpより短いコンティグをフィルタリングする。この値はfilterオプションを使って変更できる。
依存
Haploflow: strain-resolved de novo assembly of viral genomes
Adrian Fritz, Andreas Bremges, Zhi-Luo Deng, Till Robin Lesker, Jasper Götting, Tina Ganzenmueller, Alexander Sczyrba, Alexander Dilthey, Frank Klawonn & Alice Carolyn McHardy
Genome Biology volume 22, Article number: 212 (2021)