このパッケージは、porechop (Ryan Wick)のdemultiplexingオプションに触発されているが、アダプターのトリミングオプションはない - それは単にデマルチプレクサーである。 readucksはPythonバインディングを持つparasailライブラリを使用してペアワイズアラインメントを実行する。これは、ベクタープロセッサ命令の低レベル使用により、porechopで使用されるseqanライブラリを大幅に高速化する。追加の高速化は、どのバーコードが使われているかをで検索を制限することで得られる(通常、どのバーコードかは知っているはずである)。
また、ダブルバーコードの場合のコール方法には柔軟性がある(つまり、リードの両端に一致するバーコード配列がある場合にのみバーコードを呼び出すように指定すれば、誤ったコールを減らせる)。readucksは、セカンダリバーコードに対してプライマリよりも低いアイデンティティしきい値を指定できる。
https://twitter.com/NetworkArtic/status/1228634518522933248
https://twitter.com/search?q=readucks&src=typed_query
インストール
mac os10.14のanaconda環境でテストした。
依存
本体 Github
https://github.com/artic-network/readucks
#bioconda (link) ここでは仮想環境readucks-envに導入する
conda create -n readucks-env -c bioconda -y readucks
#pip
pip install biopython
pip install parasail
git clone https://github.com/rambaut/readucks.git
cd readucks
python setup.py install
> readucks -h
$ readucks -h
usage: readucks -i INPUT_PATH [-o OUTPUT_DIR] [-b] [-a] [-e] [-s] [-m MODE] [-p PREFIX] [-t THREADS] [-n NUM_READS_IN_BATCH] [--check_reads CHECK_READS] [--adapter_threshold ADAPTER_THRESHOLD] [-v VERBOSITY]
[--require_two_barcodes] [--native_barcodes] [--pcr_barcodes] [--rapid_barcodes] [--limit_barcodes_to LIMIT_BARCODES_TO [LIMIT_BARCODES_TO ...]] [--threshold THRESHOLD]
[--secondary_threshold SECONDARY_THRESHOLD] [--score_diff SCORE_DIFF] [--scoring_scheme SCORING_SCHEME] [-h] [--version]
Readucks: a simple demuxing tool for nanopore data.
Main options:
-i INPUT_PATH, --input INPUT_PATH FASTQ of input reads or a directory which will be recursively searched for FASTQ files (required).
-o OUTPUT_DIR, --output_dir OUTPUT_DIR
Output directory (default: working directory)
-b, --bin_barcodes Reads will be binned based on their barcode and saved to separate files. (default: False)
-a, --annotate_files Writes a CSV file for each input file containing barcode calls for each read. (default: False)
-e, --extended_info Writes extended information about barcode calls. (default: False)
-s, --summary_info Writes another file with information about barcode calls. (default: False)
-m MODE, --mode MODE Demuxing mode, one of ["stringent","lenient", "porechop"]. (default: porechop)
-p PREFIX, --prefix PREFIX Optional prefix to file names
-t THREADS, --threads THREADS The number of threads to use (1 to turn off multithreading) (default: 2)
-n NUM_READS_IN_BATCH, --num_reads_in_batch NUM_READS_IN_BATCH
The number of reads to process (and hold in memory) at a time (default: 200)
--check_reads CHECK_READS Number of barcodes to classify before filtering barcode set (default: 1000)
--adapter_threshold ADAPTER_THRESHOLD
Identity required for a barcode to be included after filtering (default: 90)
-v VERBOSITY, --verbosity VERBOSITY Level of output information: 0 = none, 1 = some, 2 = lots (default: 1)
Demuxing options:
--require_two_barcodes Match barcodes at both ends of read (default single)
--native_barcodes Only attempts to match the 24 native barcodes (default)
--pcr_barcodes Only attempts to match the 96 PCR barcodes (default: False)
--rapid_barcodes Only attempts to match the 12 rapid barcodes (default: False)
--limit_barcodes_to LIMIT_BARCODES_TO [LIMIT_BARCODES_TO ...]
Specify a list of barcodes to look for (numbers refer to native, PCR or rapid)
Barcode search settings:
Settings for how to search for and call barcodes
--threshold THRESHOLD A read must have at least this percent identity to a barcode (default: 75)
--secondary_threshold SECONDARY_THRESHOLD
The second barcode must have at least this percent identity (and match the first one) (default: 65)
--score_diff SCORE_DIFF The second barcode must have at least this percent identity (and match the first one) (default: 5)
--scoring_scheme SCORING_SCHEME Comma-delimited string of alignment scores: match, mismatch, gap open, gap extend (default: 3,-6,-5,-2)
Help:
-h, --help Show this help message and exit
--version Show program's version number and exit
実行方法
fastqを指定する。
mkddir demuxed
readucks -i input_reads.fastq -o demuxed/ -b --native_barcodes --verbosity 1
引用
https://github.com/artic-network/readucks