Bactopia Tool - amrfinderplus¶
The amrfinderplus module uses AMRFinder+ to screen assemblies and proteins
for antimicrobial resistance and virulence genes.
Example Usage¶
bactopia --wf amrfinderplus \
  --bactopia /path/to/your/bactopia/results \ 
  --include includes.txt  
Output Overview¶
Below is the default output structure for the amrfinderplus tool. Where possible the 
file descriptions below were modified from a tools description.
amrfinderplus/
├── SRX4563671
│   ├── SRX4563671-genes.tsv
│   ├── SRX4563671-proteins.tsv
│   └── logs
│       └── amrfinderplus
│           ├── nf-amrfinderplus.{begin,err,log,out,run,sh,trace}
│           └── versions.yml
├── logs
│   ├── amrfinderplus
│   │   ├── nf-amrfinderplus.{begin,err,log,out,run,sh,trace}
│   │   └── versions.yml
│   ├── csvtk_concat
│   │   ├── nf-csvtk_concat.{begin,err,log,out,run,sh,trace}
│   │   └── versions.yml
│   └── custom_dumpsoftwareversions
│       ├── nf-custom_dumpsoftwareversions.{begin,err,log,out,run,sh,trace}
│       └── versions.yml
├── nf-reports
│   ├── amrfinderplus-dag.dot
│   ├── amrfinderplus-report.html
│   ├── amrfinderplus-timeline.html
│   └── amrfinderplus-trace.txt
├── amrfinderdb.tar.gz
├── amrfinderplus-genes.tsv
├── amrfinderplus-proteins.tsv
├── software_versions.yml
└── software_versions_mqc.yml
Results¶
Top Level¶
Below are results that are in the base directory.
| Filename | Description | 
|---|---|
| amrfinderdb.tar.gz | A tarball of the AMRFinder+database used during analysis | 
| amrfinderplus-genes.tsv | A merged TSV file with AMRFinder+results using nucleotide inputs | 
| amrfinderplus-proteins.tsv | A merged TSV file with AMRFinder+results using protein inputs | 
AMRFinder+¶
Below is a description of the per-sample results from AMRFinder+.
| Extension | Description | 
|---|---|
| -genes.tsv | A TSV file with AMRFinder+results using nucleotide inputs | 
| -proteins.tsv | A TSV file with AMRFinder+results using protein inputs | 
Audit Trail¶
Below are files that can assist you in understanding which parameters and program versions were used.
Logs¶
Each process that is executed will have a logs folder containing helpful files for you to review
if the need ever arises.
| Filename | Description | 
|---|---|
| nf-<PROCESS_NAME>.begin | An empty file used to designate the process started | 
| nf-<PROCESS_NAME>.err | Contains STDERR outputs from the process | 
| nf-<PROCESS_NAME>.log | Contains both STDERR and STDOUT outputs from the process | 
| nf-<PROCESS_NAME>.out | Contains STDOUT outputs from the process | 
| nf-<PROCESS_NAME>.run | The script Nextflow uses to stage/unstage files and queue processes based on given profile | 
| nf-<PROCESS_NAME>.sh | The script executed by bash for the process | 
| nf-<PROCESS_NAME>.trace | The Nextflow Trace report for the process | 
| versions.yml | A YAML formatted file with program versions | 
Nextflow Reports¶
These Nextflow reports provide great a great summary of your run. These can be used to optimize resource usage and estimate expected costs if using cloud platforms.
| Filename | Description | 
|---|---|
| amrfinderplus-dag.dot | The Nextflow DAG visualisation | 
| amrfinderplus-report.html | The Nextflow Execution Report | 
| amrfinderplus-timeline.html | The Nextflow Timeline Report | 
| amrfinderplus-trace.txt | The Nextflow Trace report | 
Program Versions¶
At the end of each run, each of the versions.yml files are merged into the files below.
| Filename | Description | 
|---|---|
| software_versions.yml | A complete list of programs and versions used by each process | 
| software_versions_mqc.yml | A complete list of programs and versions formatted for MultiQC | 
Parameters¶
Required Parameters¶
Define where the pipeline should find input data and save output data.
| Parameter | Description | Default | 
|---|---|---|
| --bactopia | The path to bactopia results to use as inputs | 
Filtering Parameters¶
Use these parameters to specify which samples to include or exclude.
| Parameter | Description | Default | 
|---|---|---|
| --include | A text file containing sample names (one per line) to include from the analysis | |
| --exclude | A text file containing sample names (one per line) to exclude from the analysis | 
AMRFinder+ Parameters¶
| Parameter | Description | Default | 
|---|---|---|
| --amrfinder_db | Path to your AMRFinder+ database as a tarball, if not given database will be built | |
| --force_update | Force AMRFinder+ to rebuild the database | False | 
| --ident_min | Minimum proportion of identical amino acids in alignment for hit (0..1) | -1 | 
| --coverage_min | Minimum coverage of the reference protein (0..1) | 0.5 | 
| --organism | Taxonomy group to run additional screens against | |
| --translation_table | NCBI genetic code for translated BLAST | 11 | 
| --report_common | Report proteins common to a taxonomy group | False | 
| --report_all_equal | Report all equally-scoring BLAST and HMM matches | False | 
| --amrfinder_opts | Extra AMRFinder+ options in quotes. | 
Optional Parameters¶
These optional parameters can be useful in certain settings.
| Parameter | Description | Default | 
|---|---|---|
| --outdir | Base directory to write results to | ./ | 
| --run_name | Name of the directory to hold results | bactopia | 
| --skip_compression | Ouput files will not be compressed | False | 
| --keep_all_files | Keeps all analysis files created | False | 
Max Job Request Parameters¶
Set the top limit for requested resources for any single job.
| Parameter | Description | Default | 
|---|---|---|
| --max_retry | Maximum times to retry a process before allowing it to fail. | 3 | 
| --max_cpus | Maximum number of CPUs that can be requested for any single job. | 4 | 
| --max_memory | Maximum amount of memory (in GB) that can be requested for any single job. | 32 | 
| --max_time | Maximum amount of time (in minutes) that can be requested for any single job. | 120 | 
| --max_downloads | Maximum number of samples to download at a time | 3 | 
Nextflow Configuration Parameters¶
Parameters to fine-tune your Nextflow setup.
| Parameter | Description | Default | 
|---|---|---|
| --nfconfig | A Nextflow compatible config file for custom profiles, loaded last and will overwrite existing variables if set. | |
| --publish_dir_mode | Method used to save pipeline results to output directory. | copy | 
| --infodir | Directory to keep pipeline Nextflow logs and reports. | ${params.outdir}/pipeline_info | 
| --force | Nextflow will overwrite existing output files. | False | 
| --cleanup_workdir | After Bactopia is successfully executed, the workdirectory will be deleted. | False | 
Nextflow Profile Parameters¶
Parameters to fine-tune your Nextflow setup.
| Parameter | Description | Default | 
|---|---|---|
| --condadir | Directory to Nextflow should use for Conda environments | |
| --registry | Docker registry to pull containers from. | dockerhub | 
| --singularity_cache | Directory where remote Singularity images are stored. | |
| --singularity_pull_docker_container | Instead of directly downloading Singularity images for use with Singularity, force the workflow to pull and convert Docker containers instead. | |
| --force_rebuild | Force overwrite of existing pre-built environments. | False | 
| --queue | Comma-separated name of the queue(s) to be used by a job scheduler (e.g. AWS Batch or SLURM) | general,high-memory | 
| --cluster_opts | Additional options to pass to the executor. (e.g. SLURM: '--account=my_acct_name' | |
| --disable_scratch | All intermediate files created on worker nodes of will be transferred to the head node. | False | 
Helpful Parameters¶
Uncommonly used parameters that might be useful.
| Parameter | Description | Default | 
|---|---|---|
| --monochrome_logs | Do not use coloured log outputs. | |
| --nfdir | Print directory Nextflow has pulled Bactopia to | |
| --sleep_time | The amount of time (seconds) Nextflow will wait after setting up datasets before execution. | 5 | 
| --validate_params | Boolean whether to validate parameters against the schema at runtime | True | 
| --help | Display help text. | |
| --wf | Specify which workflow or Bactopia Tool to execute | bactopia | 
| --list_wfs | List the available workflows and Bactopia Tools to use with '--wf' | |
| --show_hidden_params | Show all params when using --help | |
| --help_all | An alias for --help --show_hidden_params | |
| --version | Display version text. | 
Citations¶
If you use Bactopia and amrfinderplus in your analysis, please cite the following.
- 
Bactopia 
 Petit III RA, Read TD Bactopia - a flexible pipeline for complete analysis of bacterial genomes. mSystems 5 (2020)
- 
AMRFinderPlus 
 Feldgarden M, Brover V, Haft DH, Prasad AB, Slotta DJ, Tolstoy I, Tyson GH, Zhao S, Hsu C-H, McDermott PF, Tadesse DA, Morales C, Simmons M, Tillman G, Wasilenko J, Folster JP, Klimke W Validating the NCBI AMRFinder Tool and Resistance Gene Database Using Antimicrobial Resistance Genotype-Phenotype Correlations in a Collection of NARMS Isolates. Antimicrob. Agents Chemother. (2019)
- 
csvtk 
 Shen, W csvtk: A cross-platform, efficient and practical CSV/TSV toolkit in Golang. (GitHub)