phispy
Tags: prophage phage annotation bacterial archaeal bactopia-tool
Prediction of prophages in bacterial and archaeal genomes.
This Bactopia Tool uses PhiSpy to identify prophages from bacterial and archaeal genomes using machine learning approaches.
Usage
Bactopia CLI:
bactopia --wf phispy \
--bactopia /path/to/your/bactopia/results
Nextflow:
nextflow run bactopia/bactopia/workflows/bactopia-tools/phispy/main.nf \
--bactopia /path/to/your/bactopia/results
Outputs
Expected Output Files
<BACTOPIA_DIR>
├── <SAMPLE_NAME>
│ └── tools
│ └── phispy-<TIMESTAMP>
│ ├── <SAMPLE_NAME>.tsv
│ ├── logs
│ │ ├── <SAMPLE_NAME>.log
│ │ ├── nf.command.{begin,err,log,out,run,sh,trace}
│ │ └── versions.yml
│ └── supplemental
│ └── <SAMPLE_NAME>_<SAMPLE_NAME>.gbk.gz
├── GCF_900478275
│ └── tools
│ └── phispy-<TIMESTAMP>
│ ├── GCF_900478275.tsv
│ ├── logs
│ │ ├── GCF_900478275.log
│ │ ├── nf.command.{begin,err,log,out,run,sh,trace}
│ │ └── versions.yml
│ └── supplemental
│ └── GCF_900478275_GCF_900478275.gbk.gz
└── bactopia-runs
└── phispy-<TIMESTAMP>
├── merged-results
│ ├── logs
│ │ └── phispy-concat
│ │ ├── nf.command.{begin,err,log,out,run,sh,trace}
│ │ └── versions.yml
│ └── phispy.tsv
└── nf-reports
├── phispy-dag.dot
├── phispy-report.html
└── phispy-timeline.html
Per-Sample Results
| File | Description |
|---|---|
*.txt | Tab-delimited file containing prophage predictions |
Merged Results
| File | Description |
|---|---|
phispy.tsv | Merged TSV file containing prophage predictions from all samples |
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 |
|---|---|
| phispy-dag.dot | The Nextflow DAG visualization |
| phispy-report.html | The Nextflow Execution Report |
| phispy-timeline.html | The Nextflow Timeline Report |
| phispy-trace.txt | The Nextflow Trace report |
Parameters
Required Parameters
Define where the pipeline should find input data and save output data.
| Parameter | Type | Default | Description |
|---|---|---|---|
--bactopia | string | The path to bactopia results to use as inputs |
PhiSpy Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
--phispy_number | integer | 5 | Number of consecutive genes in a region of window size that must be prophage genes to be called |
--phispy_mincontigsize | integer | 5000 | Minimum contig size (in bp) to be included in the analysis. Smaller contigs will be dropped. |
--phispy_windowsize | integer | 30 | Window size of consecutive genes to look through to find phages |
--phispy_nonprophage_genegaps | integer | 10 | The number of non phage genes between prophages |
--phispy_phage_genes | integer | 1 | The minimum number of genes that must be identified as belonging to a phage for the region to be included |
--phispy_randomforest_trees | integer | 500 | Number of trees generated by Random Forest classifier |
--phispy_opts | string | Extra options in quotes for PhiSpy |
csvtk concat Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
--csvtk_concat_opts | string | Extra csvtk concat options in quotes |
Filtering Parameters
Use these parameters to specify which samples to include or exclude.
| Parameter | Type | Default | Description |
|---|---|---|---|
--include | string | A text file containing sample names (one per line) to include from the analysis | |
--exclude | string | A text file containing sample names (one per line) to exclude from the analysis |
Optional Parameters
These optional parameters can be useful in certain settings.
| Parameter | Type | Default | Description |
|---|---|---|---|
--outdir | string | bactopia | Base directory to write results to |
--skip_compression | boolean | false | Output files will not be compressed |
--datasets | string | The path to cache datasets to | |
--keep_all_files | boolean | false | Keeps all analysis files created |
Max Job Request Parameters
Set the top limit for requested resources for any single job.
| Parameter | Type | Default | Description |
|---|---|---|---|
--max_retry | integer | 3 | Maximum times to retry a process before allowing it to fail. |
--max_cpus | integer | 4 | Maximum number of CPUs that can be requested for any single job. |
--max_memory | string | 128.GB | Maximum amount of memory that can be requested for any single job. |
--max_time | string | 240.h | Maximum amount of time that can be requested for any single job. |
--max_downloads | integer | 3 | Maximum number of samples to download at a time |
Nextflow Configuration Parameters
Parameters to fine-tune your Nextflow setup.
| Parameter | Type | Default | Description |
|---|---|---|---|
--nfconfig | string | A Nextflow compatible config file for custom profiles, loaded last and will overwrite existing variables if set. | |
--publish_dir_mode | string | copy | Method used to save pipeline results to output directory. (choices: symlink, rellink, link, copy, copyNoFollow, move) |
--infodir | string | ${params.outdir}/pipeline_info | Directory to keep pipeline Nextflow logs and reports. |
--force | boolean | false | Nextflow will overwrite existing output files. |
--cleanup_workdir | boolean | false | After Bactopia is successfully executed, the work directory will be deleted. |
Institutional config options
Parameters used to describe centralized config profiles. These should not be edited.
| Parameter | Type | Default | Description |
|---|---|---|---|
--custom_config_version | string | master | Git commit id for Institutional configs. |
--custom_config_base | string | https://raw.githubusercontent.com/nf-core/configs/master | Base directory for Institutional configs. |
--config_profile_name | string | Institutional config name. | |
--config_profile_description | string | Institutional config description. | |
--config_profile_contact | string | Institutional config contact information. | |
--config_profile_url | string | Institutional config URL link. |
Nextflow Profile Parameters
Parameters to fine-tune your Nextflow setup.
| Parameter | Type | Default | Description |
|---|---|---|---|
--condadir | string | Directory to Nextflow should use for Conda environments | |
--registry | string | quay.io | Registry to pull Docker containers from. |
--datasets_cache | string | <HOME>/.bactopia/datasets | Directory where downloaded datasets should be stored. |
--singularity_cache | string | Directory where remote Singularity images are stored. | |
--singularity_pull_docker_container | boolean | Instead of directly downloading Singularity images for use with Singularity, force the workflow to pull and convert Docker containers instead. | |
--force_rebuild | boolean | false | Force overwrite of existing pre-built environments. |
--queue | string | general,high-memory | Comma-separated name of the queue(s) to be used by a job scheduler (e.g. AWS Batch or SLURM) |
--cluster_opts | string | Additional options to pass to the executor. (e.g. SLURM: '--account=my_acct_name' | |
--container_opts | string | Additional options to pass to Apptainer, Docker, or Singularity. (e.g. Singularity: '-D pwd' | |
--disable_scratch | boolean | false | All intermediate files created on worker nodes of will be transferred to the head node. |
Helpful Parameters
Uncommonly used parameters that might be useful.
| Parameter | Type | Default | Description |
|---|---|---|---|
--monochrome_logs | boolean | Do not use coloured log outputs. | |
--nfdir | boolean | Print directory Nextflow has pulled Bactopia to | |
--sleep_time | integer | 5 | The amount of time (seconds) Nextflow will wait after setting up datasets before execution. |
--validate_params | boolean | true | Boolean whether to validate parameters against the schema at runtime |
--help | boolean | Display help text. | |
--wf | string | bactopia | Specify which workflow or Bactopia Tool to execute |
--list_wfs | boolean | List the available workflows and Bactopia Tools to use with '--wf' | |
--show_hidden_params | boolean | Show all params when using --help | |
--help_all | boolean | An alias for --help --show_hidden_params | |
--version | boolean | Display version text. |
Composition
This workflow uses the following subworkflows:
- phispy - Prediction of prophages from bacterial genomes.
Citations
If you use this 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) -
PhiSpy
Akhter S, Aziz RK, and Edwards RA PhiSpy: a novel algorithm for finding prophages in bacterial genomes that combines similarity- and composition-based strategies. Nucleic Acids Research, 40(16), e126. (2012)