PyDrugLogics: a Python package designed for constructing, optimizing Boolean models and performs in-silico perturbations of the models.
Project description
PyDrugLogics
Overview
PyDrugLogics is a Python package designed for constructing, optimizing Boolean Models and performs in-silico perturbations of the models.
Core Features
- Construct Boolean model from
.sif
file - Optimize Boolean model
- Generate perturbed models
- Evaluate drug synergies
Installation
PyDrugLogics can be installed via PyPi, Conda, or directly from the source.
Install PyDrugLogics from PyPI
The process involves two steps to install the PyDrugLogics core package and its necessary external dependencies.
1. Install PyDrugLogics via pip
pip install pydruglogics
2. Install External Dependency
pip install -r https://raw.githubusercontent.com/druglogics/pydruglogics/main/requirements.txt
This will install the PyDrugLogics package and handle all dependencies automatically.
Install PyDrugLogics via conda
Note: CoLoMoTo conda integration is ongoing.
conda install szlaura::pydruglogics
Install from Source
For the latest development version, you can clone the repository and install directly from the source:
git clone https://github.com/druglogics/pydruglogics.git
cd pydruglogics
pip install .
pip install -r requirements.txt
CoLoMoTo Notebook envionment
See more here about CoLoMoTo Docker and Notebook
Note: This section will be updated when Colomoto Docker integration is completed.
Documentation
For full documentation, visit the GitHub Documentation.
Quick Start Guide
Here's a simple example to get you started:
from pydruglogics.model.BooleanModel import BooleanModel
from pydruglogics.input.TrainingData import TrainingData
from pydruglogics.input.Perturbations import Perturbation
from pydruglogics.input.ModelOutputs import ModelOutputs
from pydruglogics.execution.Executor import execute
# Initialize train and predict
model_outputs_dict = {
"RSK_f": 1.0,
"MYC": 1.0,
"TCF7_f": 1.0
}
model_outputs = ModelOutputs(input_dictionary=model_outputs_dict)
observations = [(["CASP3:0", "CASP8:0","CASP9:0","FOXO_f:0","RSK_f:1","CCND1:1"], 1.0)]
training_data = TrainingData(observations=observations)
drug_data = [['PI', 'PIK3CA', 'inhibits'],
['PD', 'MEK_f', 'activates'],
['CT','GSK3_f']]
perturbations = Perturbation(drug_data=drug_data)
boolean_model = BooleanModel(file='./ags_cascade_1.0/network.bnet', model_name='test', mutation_type='topology',
attractor_tool='mpbn', attractor_type='trapspaces')
observed_synergy_scores = ["PI-PD", "PI-5Z", "PD-AK", "AK-5Z"]
ga_args = {
'num_generations': 20,
'num_parents_mating': 3,
'mutation_num_genes': 3,
'fitness_batch_size': 20
}
ev_args = {
'num_best_solutions': 3,
'num_of_runs': 30,
'num_of_cores': 4
}
train_params = {
'boolean_model': boolean_model,
'model_outputs': model_outputs,
'training_data': training_data,
'ga_args': ga_args,
'ev_args': ev_args
}
predict_params = {
'perturbations': perturbations,
'model_outputs': model_outputs,
'observed_synergy_scores': observed_synergy_scores,
'synergy_method': 'bliss'
}
# run train and predict
execute(train_params=train_params, predict_params=predict_params)
For a more detailed tutorial, please visit the documentation.
Citing PyDrugLogics
If you use PyDrugLogics, please cite the paper:
Flobak, Å., Zobolas, J. et al. (2023): Fine tuning a logical model of cancer cells to predict drug synergies: combining manual curation and automated parameterization. DOI: 10.3389/fsysb.2023.1252961
@Article{druglogics2023,
title = {Fine tuning a logical model of cancer cells to predict drug synergies: combining manual curation and automated parameterization},
author = {Flobak, Å., Zobolas, J. and Other Authors},
journal = {Frontiers},
year = {2023},
month = {nov},
doi = {10.3389/fsysb.2023.1252961},
url = {https://www.frontiersin.org/journals/systems-biology/articles/10.3389/fsysb.2023.1252961/full},
}
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file pydruglogics-0.1.6.tar.gz
.
File metadata
- Download URL: pydruglogics-0.1.6.tar.gz
- Upload date:
- Size: 38.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf92bd08304cfc9f39e52378db40e07201eb6b5656e550d61f1f30459322241d |
|
MD5 | 6eb123468b28e1133a759f47f537c8b7 |
|
BLAKE2b-256 | 9d3937a4787f8367589eea827500c2453ccc340dcd27f77aa310b35de98d7c9e |
File details
Details for the file pydruglogics-0.1.6-py3-none-any.whl
.
File metadata
- Download URL: pydruglogics-0.1.6-py3-none-any.whl
- Upload date:
- Size: 42.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5800b85324abf5f9dfd2e9f6cc7b94d533477e1efa195f36d241e39e7266166 |
|
MD5 | 6c5488e4ef1f22e87e42ea8954feedcc |
|
BLAKE2b-256 | 928e12cff88f66545b07884b984676b71876fd3cd340fdaae7fad25a46c1b881 |