Bactopia Tool - gtdb
¶
The gtdb
tool uses GTDB-Tk's classify
workflow to assign taxonomic classifications to your set of samples. This is
done through the use of the Genome Taxonomy Database.
If you are unsure of your sequences, gtdb
is useful tool to help determine
the taxonomy of your samples.
Example Usage¶
bactopia --wf gtdb \
--bactopia /path/to/your/bactopia/results \
--include includes.txt
Output Overview¶
Below is the default output structure for the gtdb
tool. Where possible the
file descriptions below were modified from a tools description.
<BACTOPIA_DIR>
├── <SAMPLE_NAME>
│ └── tools
│ └── gtdb
│ ├── align
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.filtered.tsv
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.msa.fasta.gz
│ │ └── <SAMPLE_NAME>.{ar122|bac120}.user_msa.fasta.gz
│ ├── classify
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.classify.tree.1.tree
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.classify.tree.6.tree
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.summary.tsv
│ │ ├── <SAMPLE_NAME>.{ar122|bac120}.tree.mapping.tsv
│ │ └── <SAMPLE_NAME>.backbone.{ar122|bac120}.classify.tree
│ ├── gtdbtk.json
│ ├── identify
│ │ ├── <SAMPLE_NAME>.ar53.markers_summary.tsv
│ │ ├── <SAMPLE_NAME>.bac120.markers_summary.tsv
│ │ ├── <SAMPLE_NAME>.failed_genomes.tsv
│ │ └── <SAMPLE_NAME>.translation_table_summary.tsv
│ ├── logs
│ │ ├── nf-gtdb.{begin,err,log,out,run,sh,trace}
│ │ ├── results
│ │ │ ├── gtdbtk.log
│ │ │ └── gtdbtk.warnings.log
│ │ └── versions.yml
│ └── <SAMPLE_NAME>.{ar122|bac120}.summary.tsv
└── bactopia-runs
└── gtdb-<TIMESTAMP>
├── merged-results
│ ├── gtdb.tsv
│ └── logs
│ └── gtdb-concat
│ ├── nf-merged-results.{begin,err,log,out,run,sh,trace}
│ └── versions.yml
└── nf-reports
├── gtdb-dag.dot
├── gtdb-report.html
├── gtdb-timeline.html
└── gtdb-trace.txt
Results¶
GTDB-Tk¶
Below is a description of the per-sample results from GTDB-Tk. For full details about each of the GTDB output files, see GTDB-Tk Classify Workflow page.
Filename | Description |
---|---|
<SAMPLE_NAME>.{ar122 | bac120}.classify.tree |
<SAMPLE_NAME>.{ar122 | bac120}.filtered.tsv |
<SAMPLE_NAME>.{ar122 | bac120}.markers_summary.tsv |
<SAMPLE_NAME>.{ar122 | bac120}.msa.fasta |
<SAMPLE_NAME>.{ar122 | bac120}.summary.tsv |
<SAMPLE_NAME>.{ar122 | bac120}.user_msa.fasta |
<SAMPLE_NAME>.translation_table_summary.tsv | Summary of the translation table used for each genome |
<SAMPLE_NAME>.ar122.markers_summary.tsv | Summary of unique, duplicated, and missing markers within the 122 archaeal marker set for each submitted genome |
<SAMPLE_NAME>.bac120.markers_summary.tsv | Summary of unique, duplicated, and missing markers within the 120 bacterial marker set for each submitted genome |
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 folder named logs
. In this folder are helpful
files for you to review if the need ever arises.
Extension | Description |
---|---|
.begin | An empty file used to designate the process started |
.err | Contains STDERR outputs from the process |
.log | Contains both STDERR and STDOUT outputs from the process |
.out | Contains STDOUT outputs from the process |
.run | The script Nextflow uses to stage/unstage files and queue processes based on given profile |
.sh | The script executed by bash for the process |
.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 |
---|---|
gtdb-dag.dot | The Nextflow DAG visualisation |
gtdb-report.html | The Nextflow Execution Report |
gtdb-timeline.html | The Nextflow Timeline Report |
gtdb-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 |
---|---|
--bactopia |
The path to bactopia results to use as inputs Type: string |
Filtering Parameters¶
Use these parameters to specify which samples to include or exclude.
Parameter | Description |
---|---|
--include |
A text file containing sample names (one per line) to include from the analysis Type: string |
--exclude |
A text file containing sample names (one per line) to exclude from the analysis Type: string |
GTDB Setup Parameters¶
Parameter | Description |
---|---|
--gtdb |
Tarball or path of a GTDB database. If a database is not found, you must use '--download_gtdb' Type: string |
--download_gtdb |
Download the latest GTDB database, even it exists Type: boolean |
--gtdb_save_as_tarball |
Download the latest GTDB database, and save it in a single tarball Type: boolean |
--skip_check |
Do not check the installation of GTDB database Type: boolean |
GTDB Classify Parameters¶
Parameter | Description |
---|---|
--min_af |
Minimum alignment fraction to consider closest genome Type: number , Default: 0.65 |
--min_perc_aa |
Filter genomes with an insufficient percentage of AA in the MSA Type: integer , Default: 10 |
--gtdb_tmp |
Specify alternative directory for temporary files Type: boolean , Default: /tmp |
--gtdb_use_scratch |
Reduce pplacer memory usage by writing to --gtdb_tmp location (slower) Type: boolean |
--gtdb_debug |
Create intermediate files for debugging purposes Type: boolean |
--force_gtdb |
Continue processing if an error occurs on a single genome Type: boolean |
Optional Parameters¶
These optional parameters can be useful in certain settings.
Parameter | Description |
---|---|
--outdir |
Base directory to write results to Type: string , Default: ./ |
--run_name |
Name of the directory to hold results Type: string , Default: bactopia |
--skip_compression |
Ouput files will not be compressed Type: boolean |
--datasets |
The path to cache datasets to Type: string |
--keep_all_files |
Keeps all analysis files created Type: boolean |
Max Job Request Parameters¶
Set the top limit for requested resources for any single job.
Parameter | Description |
---|---|
--max_retry |
Maximum times to retry a process before allowing it to fail. Type: integer , Default: 3 |
--max_cpus |
Maximum number of CPUs that can be requested for any single job. Type: integer , Default: 4 |
--max_memory |
Maximum amount of memory (in GB) that can be requested for any single job. Type: integer , Default: 32 |
--max_time |
Maximum amount of time (in minutes) that can be requested for any single job. Type: integer , Default: 120 |
--max_downloads |
Maximum number of samples to download at a time Type: integer , Default: 3 |
Nextflow Configuration Parameters¶
Parameters to fine-tune your Nextflow setup.
Parameter | Description |
---|---|
--nfconfig |
A Nextflow compatible config file for custom profiles, loaded last and will overwrite existing variables if set. Type: string |
--publish_dir_mode |
Method used to save pipeline results to output directory. Type: string , Default: copy |
--infodir |
Directory to keep pipeline Nextflow logs and reports. Type: string , Default: ${params.outdir}/pipeline_info |
--force |
Nextflow will overwrite existing output files. Type: boolean |
--cleanup_workdir |
After Bactopia is successfully executed, the work directory will be deleted. Type: boolean |
Nextflow Profile Parameters¶
Parameters to fine-tune your Nextflow setup.
Parameter | Description |
---|---|
--condadir |
Directory to Nextflow should use for Conda environments Type: string |
--registry |
Docker registry to pull containers from. Type: string , Default: dockerhub |
--datasets_cache |
Directory where downloaded datasets should be stored. Type: string , Default: <BACTOPIA_DIR>/data/datasets |
--singularity_cache |
Directory where remote Singularity images are stored. Type: string |
--singularity_pull_docker_container |
Instead of directly downloading Singularity images for use with Singularity, force the workflow to pull and convert Docker containers instead. Type: boolean |
--force_rebuild |
Force overwrite of existing pre-built environments. Type: boolean |
--queue |
Comma-separated name of the queue(s) to be used by a job scheduler (e.g. AWS Batch or SLURM) Type: string , Default: general,high-memory |
--cluster_opts |
Additional options to pass to the executor. (e.g. SLURM: '--account=my_acct_name' Type: string |
--disable_scratch |
All intermediate files created on worker nodes of will be transferred to the head node. Type: boolean |
Helpful Parameters¶
Uncommonly used parameters that might be useful.
Parameter | Description |
---|---|
--monochrome_logs |
Do not use coloured log outputs. Type: boolean |
--nfdir |
Print directory Nextflow has pulled Bactopia to Type: boolean |
--sleep_time |
The amount of time (seconds) Nextflow will wait after setting up datasets before execution. Type: integer , Default: 5 |
--validate_params |
Boolean whether to validate parameters against the schema at runtime Type: boolean , Default: True |
--help |
Display help text. Type: boolean |
--wf |
Specify which workflow or Bactopia Tool to execute Type: string , Default: bactopia |
--list_wfs |
List the available workflows and Bactopia Tools to use with '--wf' Type: boolean |
--show_hidden_params |
Show all params when using --help Type: boolean |
--help_all |
An alias for --help --show_hidden_params Type: boolean |
--version |
Display version text. Type: boolean |
Citations¶
If you use Bactopia and gtdb
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) -
Genome Taxonomy Database
Parks DH, Chuvochina M, Rinke C, Mussig AJ, Chaumeil P-A, Hugenholtz P GTDB: an ongoing census of bacterial and archaeal diversity through a phylogenetically consistent, rank normalized and complete genome-based taxonomy Nucleic Acids Research gkab776 (2021) -
GTDB-Tk
Chaumeil PA, Mussig AJ, Hugenholtz P, Parks DH GTDB-Tk: a toolkit to classify genomes with the Genome Taxonomy Database. Bioinformatics (2019)