/nf-core-readsimulator

A pipeline to simulate sequencing reads, such as Amplicon, Target Capture, Metagenome, and Whole genome data.

Primary LanguageNextflowMIT LicenseMIT

nf-core/readsimulator nf-core/readsimulator

GitHub Actions CI Status GitHub Actions Linting StatusAWS CICite with Zenodo

Nextflow run with conda run with docker run with singularity Launch on Nextflow Tower

Get help on SlackFollow on TwitterFollow on MastodonWatch on YouTube

Introduction

nf-core/readsimulator is a pipeline to simulate sequencing reads. The pipeline currently supports simulating amplicon, target capture, metagenome, and wholegenome data. It takes a samplesheet with sample names and seeds for random generation to produce simulated FASTQ files and a samplesheet that contains the paths to the FASTQ files.

nf-core/readsimulator workflow overview

Amplicon simulation steps

  1. Create reference database for amplicon-based sequencing (CRABS)
  2. Simulate amplicon Illumina reads (art_illumina)
  3. Create samplesheet with sample names and paths to simulated read files
  4. Simulated read QC (FastQC)
  5. Present QC for simulated reads (MultiQC)

Target capture simulation steps

  1. Align probes to genome (Bowtie2)
  2. Get SAM index (SAMtools)
  3. Simulate target capture reads (Illumina (default) or Pacbio) (Japsa capsim)
  4. Create samplesheet with sample names and paths to simulated read files
  5. Simulated read QC (FastQC)
  6. Present QC for simulated reads (MultiQC)

Metagenome simulation steps

  1. Simulate metagenome Illumina reads (InsilicoSeq Generate)
  2. Create samplesheet with sample names and paths to simulated read files
  3. Simulated read QC (FastQC)
  4. Present QC for simulated reads (MultiQC)

Wholegenome simulation steps

  1. Simulate wholegenome reads (wgsim)
  2. Create samplesheet with sample names and paths to simulated read files
  3. Simulated read QC (FastQC)
  4. Present QC for simulated reads (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,seed
sample_1,1
sample_2,4

Each row represents an output sample.

Now, you can run the pipeline using:

nextflow run nf-core/readsimulator \
   -profile <docker/singularity/.../institute> \
   --input samplesheet.csv \
   --amplicon \
   --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

To see the results of an example test run with a full size dataset refer to the results tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the output documentation.

Credits

nf-core/readsimulator was originally written by Adam Bennett for use at the Minderoo Foundation's OceanOmics project.

We thank the following people for their extensive assistance in the development of this pipeline (in alphabetical order):

Contributions and Support

If you would like to contribute to this pipeline, please see the contributing guidelines.

For further information or help, don't hesitate to get in touch on the Slack #readsimulator channel (you can join with this invite).

Citations

An extensive list of references for the tools used by the pipeline can be found in the CITATIONS.md file.

You can cite the nf-core publication as follows:

The nf-core framework for community-curated bioinformatics pipelines.

Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.

Nat Biotechnol. 2020 Feb 13. doi: 10.1038/s41587-020-0439-x.