macでインフォマティクス

macでインフォマティクス

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

fastqから正確に汚染を除去する CONSULT

 

 多くのバイオインフォマティクスのアプリケーションには基本的な疑問がある。あるシーケンスリードは、ある広範な分類群のゲノムからなる大規模なデータセットに属しているのか、たとえそのセットの中で最も近いマッチがクエリから進化的に乖離しているのか。例えば、低カバレッジのゲノムシーケンス(スキミング)プロジェクトでは、オルガネラのゲノムをアセンブルするか、アセンブルされていないリードから直接ゲノム距離を計算する。未アセンブルのリードを使用すると、サンプルには意図しない種のグループからのリードが含まれることが多いため、コンタミネーションを検出する必要がある。同様に、オルガネラゲノムをアセンブルするには、オルガネラと核のリードを区別する必要がある。k-merベースの手法はリードマッチングに有望であるが、既存の手法ではコンタミネーションを検出するには感度が不十分であることが先行研究で示されている。ここでは、CONSULTと呼ばれる新しいリードマッチングツールを紹介する。CONSULTは、locality-sensitive hashingを用いて、クエリからのk-merがリファレンスデータセットからユーザーが指定した距離内にあるかどうかをテストする。現在入手可能な大容量メモリマシンを利用して、CONSULTライブラリは数万種の微生物種に対応している。その結果、CONSULTはKraken2などの主要な手法と比較して、汚染検出の真陽性率が高く、偽陽性率が低いこと、またゲノム・スキムからの距離計算が改善されることを示した。また、CONSULTはオルガネラのリードと核のリードを区別することができ、スキムベースのミトコンドリアアセンブリを劇的に改善できることを示している。

 

レポジトリに構築済みのカスタム CONSULTデータベースのダウンロードリンク5つが張られている。TOLはこちらの論文

  • GTDB
  • TOL
  • Bacterial/Archaeal Kraken
  • Mitochondrial CONSULT database
  • Plastid CONSULT database

例えば真核生物ゲノムを読んだシークエンシングリードに細菌のゲノムが混ざっている時はTOLやGTDB、Krakenを使って除去する。データベースは約60-120GBの容量がある。

 

インストール

#jellyfish
mamba install -c bioconda jellyfish -y

git clone https://github.com/noraracht/CONSULT.git
cd CONSULT/
#consult_searchという名前でコンパイル
g++ main_search.cpp -std=c++11 -fopenmp -O3 -o main_search

#main_minimizationという名前でコンパイル
g++ minimization.cpp -std=c++11 -o main_minimization

#main_mapという名前でコンパイル
g++ main_map.cpp -std=c++11 -O3 -o consult_map

> ./main_search 
v.18.0
-- Arguments supplied are 
Map (null) 
Query (null)
Threads 1

 

データベースの作成(テストラン)

CONSULTのmain_mapは、32bpのk-merとそのカウントのリストを表すJellyfishの出力ファイルを受け入れるように設計されている(Jellyfish 2.3.0を使用してテストされている)。

cat /path/to/folder/*.fna > combined.fna
jellyfish count -m 35 -s 100M -t 24 -C combined.fna -o counts.jf
jellyfish dump counts.jf > 35bp_kmer_lst.fa
jellyfish count -m 32 -s 100M -t 24 -C 32bp_minzer_lst.fa -o counts.jf
jellyfish dump counts.jf > k32C_af_mininimization.fa
./main_map -i k32C_af_mininimization.fa -o G000307305_nbr_map

genome_map/

f:id:kazumaxneo:20220411011525p:plain

サイズはリファレンスセットのk-mersの数に依存する。実際にはGTDBやミトコンドリアなどの配列をデータベースにする。

 

 

実行方法(テストラン)

データベースとクエリのfastqディレクトリ(query_set/)を指定する。テストデータではquery_set/に1つのfastqファイルだけが含まれている。

./main_search -i G000307305_nbr_map -c 1 -t 1 -q query_set

f:id:kazumaxneo:20220411012558p:plain

カレントディレクトリにucseq_G000307305.fqが出力される。

 

引用

CONSULT: accurate contamination removal using locality-sensitive hashing
Eleonora Rachtman, Vineet Bafna, Siavash Mirarab
NAR Genomics and Bioinformatics, Volume 3, Issue 3, September 2021