Corecomb: create a XMFA file from Panaroo core gene alignments to detect recombination in core-genome using ClonalFrameML.
Installation
pip install corecomb
Quick start
If you are in Panaroo output directory, just run:
corecomb
Get help
$ corecomb --help
Usage: corecomb [OPTIONS]
Create XMFA file from ClonalFrameML input from Panaroo core-genome gene alignments
╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --gene_al_dir TEXT Path to directory containing core-genome gene alignments [default: core_gene_alignments] │
│ --pan_fa TEXT Path to Panaroo pan_genome_reference.fa [default: pan_genome_reference.fa] │
│ --extension TEXT File extension of core-genome gene alignments [default: fas] │
│ --outfile TEXT Path to output XMFA file [default: corecomb.xmfa] │
│ --help Show this message and exit. │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Why
In theory, using the indivudal core-gene multiple sequence alignments from the core_gene_alignments directory of Panaroo, one could just run a sed command to concatenate these in a XMFA file.
sed -e '$s/$/\n=/' -s ../tests/data/aligned_gene_sequences_raw/*.fas > core_gene_alignment.xmfa
However, this approach suffers from 3 different issues:
- Sequence names need to be cleaned
- Ambiguous non
NIUPAC characters need to be taken care of (CFML only acceptsA,T,G,C,N,-) - Genomes with missing genes will cause CFML to crash (core-genome defined at less 100%)
CoRecomb addresses all 3 of these issues. Additionally, CoRecomb uses the order of the genes defined in the
pan_genome_reference.fato re-order the genes in the XMFA file (which will be kept by CFML outputcore_gene_test_cfml.filtered.fasta).
Test it for yourself
poetry run pytest -vv
Test data can be found here tests/data
corecomb \
--gene_al_dir tests/data/aligned_gene_sequences_raw \
--pan_fa tests/data/pan_genome_reference.fa \
--extension fas \
--outfile corecomb.xmfa
Use the XMFA with ClonalFrameML
ClonalFrameML \
input_tree.nwk \
corecomb.xmfa \
cfml_output_basename \
-xmfa_file true \
-show_progress true \
-output_filtered true
Metadata
Release files for corecomb 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| corecomb-0.3.1.tar.gz | 15.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| corecomb-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.6 kB
Release files / corecomb-0.3.1.tar.gz
| Download URL | corecomb-0.3.1.tar.gz |
|---|---|
| Size | 15.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2016923e5fb17578a04fd3f6e2890c0f2094ac1e3186492c95f35c0050ce102f
|
|
BLAKE2b-256 checksum How to use checksums |
c2b3594e3e38104fd59b010304e2a56104d3fe90468c89a662db3e13152bfa7c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.10.20 Linux/6.17.0-1018-azure
|
Release files / corecomb-0.3.1-py3-none-any.whl
| Download URL | corecomb-0.3.1-py3-none-any.whl |
|---|---|
| Size | 16.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3743e22e66f214ce0fa3787eb3d895dc82ba47e2c087c9f96d95972bbcd324d8
|
|
BLAKE2b-256 checksum How to use checksums |
7fc915f37ec6da5c7de5b6f1856aea54400fe0295edc398431ac0f3c8ac2b405
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.4.1 CPython/3.10.20 Linux/6.17.0-1018-azure
|
Security for corecomb 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.