Skip to content

A Nextflow DSL2 pipeline for the identification of cobiont and contaminating sequences using fasta and pacbio data.

License

Notifications You must be signed in to change notification settings

sanger-tol/ascc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cite with Zenodo

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


Introduction

sanger-tol/ascc is a bioinformatics pipeline that is meant for detecting cobionts and contaminants in genome assemblies. ASCC stands for Assembly Screen for Cobionts and Contaminants. The pipeline was initially made for the Aquatic Symbiosis Genomics project but is now used for more than just that. The pipeline aggregates tools such as BLAST, GC and coverage calculation, FCS-adaptor, FCS-GX, VecScreen, BlobToolKit, the BlobToolKit pipeline, Tiara, Kraken, Diamond BLASTX, and kmer counting and with kcounter+scipy. The main outputs are:

  • A CSV table with taxonomic classifications of the sequences from the consitutent tools.
  • A BlobToolKit dataset that can contain variables that are not present in BlobToolKit datasets produced by the BlobToolKit pipeline (https://github.com/sanger-tol/blobtoolkit) on its own. For example, ASCC can incorporate FCS-GX results into a BlobToolKit dataset.
  • Individual report files for adapter, PacBio barcode and organellar contaminants. The only required input file for ASCC is the assembly FASTA file. Optional inputs are sequencing reads and organellar FASTA files. All individual components of the pipeline are optional, so it is possible to do lightweight runs with assemblies that have a simple composition of species and comprehensive runs with assemblies with complex composition.

sanger-tol/ascc overview diagram

The pipeline is in a raw state of development and has not yet been thorougly tested. Its components are functional, though, so it possible to run it.

  1. Run a selection of processes from the list below (pick any that you think will be useful).
  • FCS-GX
  • FCS-adaptor
  • VecScreen
  • Tiara
  • BlobToolKit Pipeline
  • nt BLAST
  • nr and Uniprot Diamond BLASTX
  • GC and coverage calculation
  • PacBio barcodes screen
  • Organellar BLAST
  • nt Kraken2
  • kmer counting + dimensionality reduction
  1. Postprocess the results of the previous step to produce summary files. What processes were run in the previous step determines what summary files can be generated. The possible outputs are:
  • CSV table of sequence classification results
  • BlobToolKit dataset
  • CSV table of average coverage per phylum
  • Adapter and organellar contamination report files

There is a Biodiversity Genomics Academy video that introduces the ASCC pipeline on Youtube: https://www.youtube.com/watch?v=jrqjbwrg9-c.

Installation of the databases

Instructions for installing the databases can be found here.

For testing the pipeline with tiny files, there is a script that downloads a small assembly FASTA file (a fragment of a Plasmodium genome) and small database files. The script can be found here. This is just for testing if running the pipeline works without a crash. These database files a database files are just small fragments of real databases, so they are not meant for production runs. A run with these databases can be done using this test YAML file that specifies the paths to the database files: tinytest.yaml. Before use, you may need to edit the paths in the YAML file to replace relative paths with absolute paths.

Usage

The pipeline uses a YAML file to specify the input file paths and parameters. A description of the YAML file contents is here.

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,assembly_type,assembly_file
test_sample1,PRIMARY,/path/to/primary_assembly.fa
test_sample1,HAPLO,/path/to/haplotigs_assembly.fa
test_sample1,MITO,/path/to/mitochondrial_assembly.fa
test_sample1,PLASTID,/path/to/plastid_assembly.fa

Each row represents an assembled haplotype or organelle of the sample. The sample ID (the first column) is up to the user to choose. assembly_type should be one of either PRIMARY (for primary assembly), HAPLO (for haplotigs assembly), MITO (for mitochondrial assembly) and PLASTID for plastid assembly. This setup assumes that you have an assembly where the primary contigs or scaffolds are in a separate file from the haplotype scaffolds or contigs. It also assumes that you have separated the organellar sequences out of the main assembly into separate files.

It is okay to leave out assembly components from the run. E.g. if your assembly does not have a mitochondrial sequence, you can leave the row with the MITO tag out. If your assembly does not have a plastid sequence, you can leave the row with the PLASTID tag out. The params-input yaml will need to contain the following data will be detailed here.

Now, you can run the pipeline using:

nextflow run sanger-tol/ascc \
   -profile <docker/singularity/.../institute> \
   --input samplesheet \
   --params-input YAML \
   --outdir <OUTDIR> -entry SANGERTOL_ASCC --include ALL

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.

Output

A description of the output files of the pipeline can be found here.

Credits

sanger-tol/ascc was written by Eerik Aunin, Damon Lee Pointon, James Torrance, Ying Sims and Will Eagles. Pipeline development was supervised by Shane A. McCarthy and Matthieu Muffato.

We thank Michael Paulini, Camilla Santos, Noah Gettle and Ksenia Krasheninnikova for testing the pipeline.

Contributions and Support

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

Citations

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

This pipeline uses code and infrastructure developed and maintained by the nf-core community, reused here under the MIT license.

About

A Nextflow DSL2 pipeline for the identification of cobiont and contaminating sequences using fasta and pacbio data.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •