Bactopia Tool - busco
¶
The busco
module uses BUSCO (or Benchmarking Universal Single-Copy Orthologs)
to assess the completeness of your assembly.
Example Usage¶
Output Overview¶
Below is the default output structure for the busco
tool. Where possible the
file descriptions below were modified from a tools description.
<BACTOPIA_DIR>
├── <SAMPLE_NAME>
│ └── tools
│ └── busco
│ └── <BUSCO_LINEAGE>
│ ├── <SAMPLE_NAME>-summary.txt
│ ├── logs
│ │ ├── bbtools_{err|out}.log
│ │ ├── busco.log
│ │ ├── hmmsearch_{err|out}.log
│ │ ├── nf-busco.{begin,err,log,out,run,sh,trace}
│ │ ├── prodigal_{err|out}.log
│ │ ├── prodigal_mode_single_code_#_{err,out}.log
│ │ └── versions.yml
│ ├── prodigal_output
│ │ └── predicted_genes
│ │ ├── predicted.{faa,fna}
│ │ └── tmp
│ │ └── prodigal_mode_single_code_#.{faa,fna}
│ ├── run_<BUSCO_LINEAGE>
│ │ ├── busco_sequences
│ │ │ ├── fragmented_busco_sequences
│ │ │ │ └── <ID>.{faa,fna
│ │ │ ├── multi_copy_busco_sequences
│ │ │ └── single_copy_busco_sequences
│ │ │ └── <ID>.{faa,fna}
│ │ ├── full_table.tsv
│ │ ├── hmmer_output
│ │ │ └── <ID>.out
│ │ ├── missing_busco_list.tsv
│ │ └── short_summary.{json|txt}
│ └── short_summary.specific.bacteria_odb10.GCF_000292685.fna.{json|txt}
└── bactopia-runs
└── busco-<TIMESTAMP>
├── merged-results
│ ├── busco.tsv
│ └── logs
│ └── busco-concat
│ ├── nf-merged-results.{begin,err,log,out,run,sh,trace}
│ └── versions.yml
└── nf-reports
├── busco-dag.dot
├── busco-report.html
├── busco-timeline.html
└── busco-trace.txt
Results¶
Merged Results¶
Below are results that are concatenated into a single file.
Filename | Description |
---|---|
busco¶
Below is a description of the per-lineage results from BUSCO.
Filename | Description |
---|---|
<SAMPLE_NAME>-summary.txt | A summary of the BUSCO results |
prodigal_output | Below are the outputs from the Prodigal gene-prediction step. |
run_<BUSCO_LINEAGE>/busco_sequences | FASTA format file for each BUSCO gene identified |
run_<BUSCO_LINEAGE>/full_table.tsv | Complete results in a tab-delimited format with scores and lengths of BUSCO matches |
run_<BUSCO_LINEAGE>/hmmer_output | Tab-delimited output from HMMER |
run_<BUSCO_LINEAGE>/missing_busco_list.tsv | Tab-delimited list of missing BUSCOs |
run_<BUSCO_LINEAGE>/short_summary.json | A summary of BUSCO matches in JSON format |
run_<BUSCO_LINEAGE>/short_summary.txt | A summary of BUSCO matches |
short_summary.specific.<BUSCO_LINEAGE>.<SAMPLE_NAME>.json | A summary of BUSCO matches in JSON format per-sample |
short_summary.specific.<BUSCO_LINEAGE>.<SAMPLE_NAME>.txt | A summary of BUSCO matches per-sample |
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 |
---|---|
busco-dag.dot | The Nextflow DAG visualisation |
busco-report.html | The Nextflow Execution Report |
busco-timeline.html | The Nextflow Timeline Report |
busco-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 |
BUSCO Parameters¶
Parameter | Description |
---|---|
--busco_lineage |
Specify the name of the BUSCO lineage to be used Type: string , Default: bacteria_odb10 |
--busco_evalue |
E-value cutoff for BLAST searches. Allowed formats, 0.001 or 1e-03 Type: string , Default: 1e-03 |
--busco_limit |
Total candidate regions to consider per BUSCO Type: integer , Default: 3 |
--metaeuk_parameters |
Additional Metaeuk first-pass arguments contained within a single pair of quotation marks, separated by commas Type: string |
--metaeuk_rerun_parameters |
Additional Metaeuk second-pass arguments contained within a single pair of quotation marks, separated by commas Type: string |
--use_augustus |
Use augustus gene predictor for eukaryote runs Type: boolean |
--augustus_parameters |
Additional Augustus arguments contained within a single pair of quotation marks, separated by commas Type: string |
--augustus_species |
Specify a species for Augustus training Type: string |
--augustus_long |
Optimization Augustus self-training mode 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: 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 |
Institutional config options¶
Parameters used to describe centralized config profiles. These should not be edited.
Parameter | Description |
---|---|
--custom_config_version |
Git commit id for Institutional configs. Type: string , Default: master |
--custom_config_base |
Base directory for Institutional configs. Type: string , Default: https://raw.githubusercontent.com/nf-core/configs/master |
--config_profile_name |
Institutional config name. Type: string |
--config_profile_description |
Institutional config description. Type: string |
--config_profile_contact |
Institutional config contact information. Type: string |
--config_profile_url |
Institutional config URL link. Type: string |
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_dir |
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 |
--container_opts |
Additional options to pass to Apptainer, Docker, or Singularityu. (e.g. Singularity: '-D pwd ' 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 busco
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) -
BUSCO
Manni M, Berkeley MR, Seppey M, Simão FA, Zdobnov EM BUSCO Update: Novel and Streamlined Workflows along with Broader and Deeper Phylogenetic Coverage for Scoring of Eukaryotic, Prokaryotic, and Viral Genomes. Molecular Biology and Evolution 38(10), 4647–4654. (2021) -
csvtk
Shen, W csvtk: A cross-platform, efficient and practical CSV/TSV toolkit in Golang. (GitHub)