Saskia-Oosterbroek / decona

fastq to polished sequenses: pipeline suitable for mixed samples and long (Nanopore) reads
MIT License
41 stars 12 forks source link

New paper (including Decona) available as preprint on Biorxiv

High resolution species detection: accurate long read eDNA metabarcoding of North Sea fish using Oxford Nanopore sequencing

Karlijn Doorenspleet, Lara Jansen, Saskia Oosterbroek, Oscar Bos, Pauline Kamermans, Max Janse, Erik Wurz, Albertinka Murk, Reindert Nijland

doi: https://doi.org/10.1101/2021.11.26.470087

Decona Twitter URL

Version 1.3

For more elaborate explanations please see the "Wiki" in the menu bar.

From demultiplexing to consensus for Nanopore amplicon data

Decona can process multiple samples in one line of code:

Presentation at DNAQUA International Conference

Installation

Currently Decona is only supported for use with Linux, the Ubuntu command line app for Windows also works but is recommended only for use with smaller datasets.

Decona is sensitive to installation version of dependencies. To keep things simple the installer will create a virtual Conda environment for you containing everything you need. All dependencies are included with exception of the BLAST+ command line application. If the BLAST function is desired it can be downloaded from NCBI BLAST+.

$ tar xjvf decona-0.1.2.tar.bz2
$ ./decona/bin/install.sh
$ conda activate decona

Dependencies

Decona runs on all your favourite sequence processing tools:

Tool version function
Nanofilt 2.3.0 Filter raw reads on quality and read length
Qcat 1.1.0 Demultiplex samples
CD-hit 4.8.1 Cluster reads from samples containing multiple species / amplicons
Minimap2 2.17 Align (clustered) reads
Racon 1.4.13 Make first consensus sequences
Medaka 1.0.3 Polish consensus sequences
Medaka 1.0.3 SNP calling (to be verified for mixed samples)
BLAST+ 2.10.1 Optional, needs additional install: NCBI BLAST+

Usage

Decona works on all fastq files in your working directory. It is a good idea to have an empty directory with just the files you want to run. A results folder will appear in your working directory after a successful run. Example

$ decona -d -l 800 -m 2100 -q 10 -c 0.80 -n 100 -M
Will: Demultiplex, filter for read length 800-2100 bp and quality score 10, cluster reads at 80% ID, make consensuses of clusters larger than 100 sequences, polish with Medaka. Command Function
-h help
-v version
-T multithreading default 4
-p plot readlength distribution histogram (plots then exits program)
-f folder structure: your fastq files are already demultiplexed and stored in barcode folders (such as output from Mk1C)
Filtering:
-d demultiplex
-q quality score
-l minimum length
-m maximum length
Clustering
-c clustering percentage (default 0.8 for 80% identity)
-w clustering wordlength (default 5)
-n clustersize (default 100)
-i gives info about % sequences assigned to clusters
-r re-cluster consensus sequences (use a second round of clustering)
-g clustering algorithm: 1 or 0 (default 1)
If set to 1, the program will cluster reads into the most similar cluster that meets the threshold (accurate but slow mode)
If set to 0 a sequence is clustered to the first cluster that meets the threshold (fast cluster)
-R Randomly subsample each clusters till maximum size of n (optional, not used by default)
-k set custom kmer length, short reads require smaller kmer length (default 15)
Polishing
-M polish consensus with Medaka
-s snip/variant calling with Medaka
BLAST Optional, needs additional install: NCBI BLAST+
-B yourblastdatabase.fasta
-b /path/to/existing/blast/database/existing-data-base-file.fasta

Running Decona on the example data

To run Decona on the example data:

decona -f -l 800 -m 2100 -q 10 -c 0.80 -n 25 -M

from within the directory example_data/. It will generate output in the directory data/.

If you want to use the BLAST function you can install NCBI BLAST+ in the Decona environment.