シングルセルシーケンスの主な課題は、コンタミの可能性とその検出である[論文よりref.7]。標的ゲノムに属さない外来DNAは、複数の方法で試料に導入され得る。コンタミの原因には、全ゲノム増幅試薬が含まれる可能性すらあり得る[ref.8、9]。これらの障害を考慮してコンタミを除くための自動プロトコールが最近開発された[ref.11]。 ProDeGeは、よく使われるPCA-reduced oligonucleotide profilingとBLASTアルゴリズムを組み合わせている。CheckM [ref.13]は、コンタミネーションの指標として、複数のシングルコピーマーカー遺伝子の存在のみを使っている(checkM紹介)。より最近の分類方法[ref.14,15]、特によく知られたKraken [ref.16]は、BLASTと同レベルの検出精度を持ち、かつはるかに速い(kraken紹介)。ただしこれらの技術はすべてリファレンスに大きく依存しているため、データベースに含まれていない汚染配列やサンプル中に存在しないマーカー遺伝子は検出できない。大多数の種は未知であるため[ref.5]、そのような方法で検出することは困難であり、教師なしの分析が必要である[ref.17]。計算知能の観点からは、コンタミの検出は、メタゲノムビニングと非常によく似ている。メタゲノムおよびSCSサンプルの両方は、一次元の高次元データポイントとして表すことができる(以下略)。
ACDC(automated contamination detection and confidence estimation for single-cell genome data)は、リファレンスベースの手法とリファレンスを統合するシングルセルゲノムデータの自動汚染検出ツール。監督された方法と監督されない方法を組み合わせることにより、既知のコンタミと未知のコンタミの両方を確実に検出する。
公式サイト( web版もあり)
https://bibiserv2.cebitec.uni-bielefeld.de/acdc
インストール
cent OSに導入した。
依存
- C++11 compatible compiler
- CMake >= 3.0
- Boost C++ Libraries >= 1.55.0 (program_options, system, filesystem)
- Kraken >= 0.10.5-beta (optional)
- RNAmmer = 1.2 (optional)
本体 Github
https://github.com/mlux86/acdc
git clone https://github.com/mlux86/acdc.git
cd acdc/
mkdir build && cd build
cmake ..
make -j4
sudo make install
$ ./acdc -h
,/
,'/
,' / █████╗ ██████╗██████╗ ██████╗ (a)utomated
,' /_____, ██╔══██╗██╔════╝██╔══██╗██╔════╝ (c)ontamination
.'____ ,' ███████║██║ ██║ ██║██║ (d)etection and
/ ,' ██╔══██║██║ ██║ ██║██║ (c)onfidence estimation for single-cell genome data
/ ,' ██║ ██║╚██████╗██████╔╝╚██████╗
/,' ╚═╝ ╚═╝ ╚═════╝╚═════╝ ╚═════╝
/'
Usage:
-h [ --help ] Display this help message
-v [ --verbose ] Verbose output (use -vv for more or -vvv for maximum verbosity)
-q [ --quiet ] No output
-i [ --input-fasta ] arg Input FASTA file
-I [ --input-list ] arg File with a list of input FASTA files, one per line
-d [ --tsne-dimension ] arg (=2) T-SNE dimension
-u [ --tsne-pca-dimension ] arg (=50) T-SNE initial PCA dimension
-p [ --tsne-perplexity ] arg T-SNE perplexity (overrides automatic estimation)
-t [ --tsne-theta ] arg (=0.5) T-SNE parameter 'theta' of the underlying Barnes-Hut approximation
-m [ --min-contig-length ] arg (=0) Minimal length of contigs to consider for analysis
-k [ --window-kmer-length ] arg (=4) Length of the k-mers in the sequence vectorizer window
-w [ --window-width ] arg Width of the sliding sequence vectorizer window (overrides automatic estimation using number of target points)
-s [ --window-step ] arg Step of the sliding sequence vectorizer window (overrides automatic estimation using number of target points)
-n [ --target-num-points ] arg (=1000) Approximate number of target points for estimating window parameters
-b [ --num-bootstraps ] arg (=10) Number of bootstraps
-r [ --bootstrap-ratio ] arg (=0.75) Bootstrap subsampling ratio
-T [ --num-threads ] arg (=40) Number of threads for bootstrap analysis (default: detect number of cores)
-o [ --output-dir ] arg (=./results) Result output directory
-K [ --kraken-db ] arg Database to use for Kraken classification
-a [ --aggressive-threshold ] arg (=5000) Aggressive threshold: Treat clusters having a bp size below this threshold as outliers. (Default = 0 = aggressive mode disabled)
Dockerイメージでも提供されている。
ラン
fastqとkrakenデータベースを指定してランする。
acdc -i inout.fq -K ~/kraken/database/
引用
acdc - Automated Contamination Detection and Confidence estimation for single-cell genome data.
Lux M, Krüger J, Rinke C, Maus I, Schlüter A, Woyke T, Sczyrba A, Hammer B.
BMC Bioinformatics. 2016 Dec 20;17(1):543.