Outils CLI pour l’analyse comparative de génomes bactériens
Project description
🧬 SGLab-tools
🧠 Description
SGLab-tools est un outil modulaire et reproductible pour l’analyse comparative de génomes, conçu pour détecter et classifier les différences nucléotidiques entre des génomes de souches bactériennes ou autres organismes. Il permet l’alignement, l’extraction de différences, le masquage de régions non fiables, le comptage de scénarios évolutifs, et la génération de visualisations.
Développé par Etienne Ntumba Kabongo
Sous la supervision de Pr. Simon Grandjean Lapierre (Université de Montréal) et Pr. Martin Smith (Université de Montréal)
Laboratoires de bioinformatique et de génomique, Université de Montréal et McGill
🧰 Fonctionnalités
- 🔁 Alignement pair-à-pair de génomes avec
minimap2 - 🧬 Extraction de différences (SNPs, gaps, insertions, N)
- 🛡️ Masquage de régions peu fiables avec des fichiers BED
- 📊 Comptage des scénarios de variation (8 scénarios types)
- 📁 Fusion automatique de résultats multi-souches
- 📈 Génération de visualisations (barplot, heatmap)
- 📤 Export en
.csv,.tsv,.xlsxenrichi avecDescriptionetTotal - ⚡ Interface en ligne de commande simple (
sglab)
📦 Installation
Depuis PyPI :
pip install SGLab-tools
Ou depuis le dépôt GitHub :
git clone https://github.com/EtienneNtumba/SGLab-tools.git cd SGLab-tools pip install .
Dépendances :
Python ≥ 3.8
Outils externes : minimap2
Bibliothèques Python : typer, pandas, biopython, matplotlib, seaborn, openpyxl
📂 Exemple d'utilisation
- Préparer un fichier sample.txt :
Ref L_x H37Rv L1 H37Rv L2 H37Rv L5
Ce fichier indique quelles paires de génomes comparer.
Les fichiers suivants doivent être présents :
H37Rv.fasta, L1.fasta, L2.fasta, ... H37Rv.bed, L1.bed, L2.bed, ...
- Lancer le pipeline complet :
sglab run sample.txt
Cela génère pour chaque paire :
un alignement .paf
une table de différences .tsv
un fichier masqué .tsv
un comptage des scénarios
Puis fusionne tous les résultats en :
combined_scenarios_counts1.csv
- Enrichir, exporter et visualiser :
sglab plot
Cela produit :
combined_scenarios_augmented.csv / .tsv / .xlsx
scenarios_barplot.png
scenarios_heatmap.png
📊 Scénarios détectés Code Scénario Description 1️⃣ N/N N et N identiques 2️⃣ base/gap Base (A/C/G/T) alignée sur gap 3️⃣ base/base Base alignée sur base 4️⃣ gap/N Gap aligné sur N 5️⃣ gap/base Gap aligné sur base 6️⃣ N/base N aligné sur base 7️⃣ base/N Base alignée sur N 8️⃣ N/gap N aligné sur gap 📁 Résultats générés
alignments_H37Rv_L1.paf tables_H37Rv_L1.tsv tables_H37Rv_L1_mask.tsv scenarios_table_H37Rv_L1_mask.tsv combined_scenarios_counts1.csv combined_scenarios_augmented.{csv,tsv,xlsx} scenarios_barplot.png scenarios_heatmap.png
💡 Commandes CLI disponibles
sglab run sample.txt # Pipeline complet sglab mask --input A.tsv --ref A.bed --query B.bed sglab count --input fichier.tsv sglab merge # Fusion des scénarios sglab plot # Enrichissement + visualisation
📜 Licence
Ce projet est distribué sous licence MIT. 🙏 Remerciements
Ce travail a été réalisé dans le cadre d’une recherche en génomique comparative de Mycobacterium tuberculosis, au sein du laboratoire du Pr. Simon Grandjean Lapierre et du Pr. Martin Smith, avec l’objectif d’outiller l’analyse reproductible des génomes bactériens. 🔗 Liens utiles
GitHub Repository
Page PyPI
minimap2
Biopython
Typer CLI
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sglab_tools-1.0.1.tar.gz.
File metadata
- Download URL: sglab_tools-1.0.1.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f765c40d20dfb3c22e07461ea8742f50835f542aa65a96cad116dc591dbeab1
|
|
| MD5 |
81ab73c3fb77c01ce472784480fb6cc3
|
|
| BLAKE2b-256 |
44541e9f357bfafc63931854399c27ce5aeb25dc7bf8164ece745feb53c25572
|
File details
Details for the file sglab_tools-1.0.1-py3-none-any.whl.
File metadata
- Download URL: sglab_tools-1.0.1-py3-none-any.whl
- Upload date:
- Size: 10.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6bc07b5dfc8d225b1eef7962f15374c3db78caa7a250df5915cd6588092ed59f
|
|
| MD5 |
dc093ee73ca55b1fb9f422ce5a7f27b0
|
|
| BLAKE2b-256 |
1975663abfaff8eb3894b8e627b6e6e88542e2460ae7eb3e5ae2da1b5df89e46
|