cyclic-gMISpy
A Python package for calculating Genetic Minimal Intervention Sets (gMIS) and Minimal Cut Sets (MCS) in metabolic networks with regulatory cycles.
Overview
cyclic-gMISpy is a computational tool designed for identifying minimal genetic interventions in metabolic networks that consider regulatory cycles and gene-protein-reaction (GPR) rules. The package extends traditional minimal cut set analysis by incorporating regulatory network dynamics and cyclic dependencies.
Features
- Minimal Cut Set (MCS) Calculation: Find minimal sets of reactions that disrupt metabolic objectives
- Genetic Minimal Intervention Sets (gMIS): Identify minimal gene knockouts considering GPR rules
- Regulatory Cycles Support: Handle cyclic dependencies in gene regulatory networks
- Parallel Computing: Multi-threaded calculations for improved performance
- Multiple Solvers: Support for Gurobi and CPLEX optimization solvers
Installation
Prerequisites
- Python ≥ 3.7
- COBRApy
- NumPy
- SciPy
- pandas
- tqdm
- bidict
- bonesis
- mpbn
Required Optimization Solvers
At least one of the following optimization solvers:
- Gurobi (recommended for performance)
- CPLEX
Install Package
# Clone the repository
git clone https://github.com/your-username/cyclic-gMISpy.git
cd cyclic-gMISpy
# Install dependencies
pip install -r requirements.txt
# Install the package
pip install -e .
Or use pip install via piptest
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ cyclic-gmispy
Quick Start
Basic MCS Calculation
import cobra
from cyclic_gmis import calculateMCS
# Load your metabolic model
model = cobra.io.read_sbml_model("your_model.xml")
gMIS with Regulatory Cycles
import pandas as pd
from cyclic_gmis import calculateGMIS
# Load metabolic model
model = cobra.io.read_sbml_model("your_model.xml")
# Load regulatory network data
regulatory_df = pd.read_csv("regulatory_network.csv")
from cyclic_gmis import calculateParallelGMIS
# Run parallel gMIS calculation
parallel_results = calculateParallelGMIS(
cobraModel=model,
regulatory_dataframe=regulatory_df,
numWorkers=8,
maxKOLength=3
)
Core Components
Main Functions
calculateParallelGMIS(): Calculate genetic minimal intervention sets with regulatory cyclescalculateReadjustmentParallel(): Calculate readjustment cycles efficiently
Utilities
buildGMatrix(): Build gene-protein-reaction matrixcheckGMCS(): Validate computed genetic minimal cut setssaveSolutions(): Save results in various formatssetSolver(): Configure optimization solver settings
Problem Definitions
- Support for different optimization problem formulations
- Flexible constraint handling
- Multiple objective functions
Configuration Options
Input Data Formats
Metabolic Models
- SBML format (via COBRApy)
- JSON format
- MAT files
Regulatory Networks
- CSV files with regulator-target relationships
- Tab-separated files
- Custom pandas DataFrame format
Citing
If you use cyclic-gMISpy in your research, please cite:
[Pending]
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Support
For questions and support:
- Open an issue on GitHub
- Contact: [cjrodriguezf@unav.es]
Acknowledgments
- COBRApy community for metabolic modeling tools
- Bonesis framework for regulatory network analysis
- Optimization solver providers (Gurobi, CPLEX, SCIP)
Metadata
Release files for cyclic-gmispy 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cyclic_gmispy-0.3.3.tar.gz | 49.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cyclic_gmispy-0.3.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 159.2 kB
Release files / cyclic_gmispy-0.3.3.tar.gz
| Download URL | cyclic_gmispy-0.3.3.tar.gz |
|---|---|
| Size | 49.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9a414f3f3eda7ff19d5482ea45e5b3c56e72d82df2dd23306bf7a8a57677fe74
|
|
BLAKE2b-256 checksum How to use checksums |
094324ba611b5f3d21dfee3d35dfb9431742e52011ca0a54cfa510e463647c5d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.10
|
Release files / cyclic_gmispy-0.3.3-py3-none-any.whl
| Download URL | cyclic_gmispy-0.3.3-py3-none-any.whl |
|---|---|
| Size | 109.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7b340731322cc9bac7ab0469559262e0f2fc2483068815f27258538070a9ae27
|
|
BLAKE2b-256 checksum How to use checksums |
c95b2b05cc69ed5008ee0df310b7e7a4c676b73bd59c759bf9648bd8b8a0d6f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.5.10
|