/vsearchpipeline

VSEARCH pipeline for ASV inference of 16S seq data

Primary LanguageNextflowMIT LicenseMIT

VSEARCH nextflow pipeline

Cite with Zenodo

Nextflow run with conda run with docker run with singularity

Introduction

vsearchpipeline is a bioinformatics pipeline that uses VSEARCH to infer ASVs and make a count table from 16S sequencing reads. The input is a samplesheet with sample names and file paths to the fastq files, and a sheet with primer sequences if primer trimming is necessary. The pipeline uses DADA2 for taxonomic assignment using the SILVA v.138.1 reference database. The resulting count table, taxonomic table and phylogenetic tree resulting from the pipeline are stored in a phyloseq object. vsearch

  1. Read QC (FastQC)
  2. Trim primers (Seqtk)
  3. Infer ASVs and make count table (VSEARCH)
  4. Multiple sequence alignment (MAFFT) to make phylogenetic tree (Fasttree)
  5. Taxonomy assignment (DADA2) using SILVA 138.1 database for DADA2
  6. Phyloseq object with count table, taxonomic table and phylogenetic tree (Phyloseq)
  7. MultiQC report (MultiQC)

Usage

Note

If you are new to Nextflow and nf-core, please refer to this page on how to set-up Nextflow. Make sure to test your setup with -profile test before running the workflow on actual data.

First, prepare a samplesheet with your input data that looks as follows:

samplesheet.csv

sample,fastq_1,fastq_2
CONTROL_REP1,AEG588A1_S1_L002_R1_001.fastq.gz,AEG588A1_S1_L002_R2_001.fastq.gz

Each row represents a pair of fastq files (paired-end).

Then, prepare a sheet with the forward and reverse primers. This sheet should look as follows:

primers.csv

forward_primer, reverse_primer
CCTACGGGAGGCAGCAG,TACNVGGGTATCTAAKCC

If there are no primers to be trimmed, simply add the --skip_primers flag to the nextflow run command.

Now, you can run the pipeline using:

nextflow run nf-core/vsearchpipeline \
   -profile <docker/singularity/.../institute> \
   --input samplesheet.csv \
   --primers primers.csv \
   --outdir <OUTDIR>

Warning

Please provide pipeline parameters via the CLI or Nextflow -params-file option. Custom config files including those provided by the -c Nextflow option can be used to provide any configuration except for parameters; see docs.

For more details and further functionality, please refer to the usage documentation and the parameter documentation.

Pipeline output

All output of the different parts of the pipeline are stored in subdirectories of the output directory. These directories are named after the tools that were used ('vsearch', 'dada2', etc.). In the phyloseq folder, you can find the end result of the pipeline, which is the phyloseq object. Other important outputs are the multiqc report in the multiqc folder and the execution html report in the pipeline_info folder.

For more details on the pipeline output, please refer to the output documentation.

Credits

This pipeline uses the nf-core template as much as possible.

Citations

If you use this VSEARCH workflow for your analysis, please cite it using the following doi: 10.5281/zenodo.10076629. An extensive list of references for the tools used by the pipeline can be found in the CITATIONS.md file.