How laurenmbell/pparg works
This repository builds two PPARG bioactivity classifiers—agonist and antagonist—and exposes them through a small SMILES-input CLI. The documented workflow runs from bioactivity data through feature engineering, class balancing, model training, and prediction. The sampled source shows the CLI’s descriptor and model calls, plus the data-preparation and training steps; artifacts and dataset files are represented separately. The README also mentions future UI, screening, and docking ideas, not implemented capabilities, so they are omitted.
Main entry points: prediction.py SMILES prediction CLI · eda.py EDA and curation · data Training and test splits · agonist_rf_model.joblib Agonist model
Components 15
Data preparation
- Bioactivity data
data_processing/data/bioactivity.tsv - EDA and curation
data_processing/eda.py - Molecular features
data_processing/featSelection.py - Curated datasets
data_processing/data - Class balancing
data_processing/class_imbalance.py - Training and test splits
data_processing/data
Model training
- Agonist RF training
ml_prediction/agonist_rf.py - Antagonist RF training
ml_prediction/antagonist_rf.py - Agonist model
ml_prediction/agonist_rf_model.joblib - Antagonist model
ml_prediction/antagonist_rf_model.joblib - Model loader
ml_prediction/eval.py
Prediction
- SMILES prediction CLI
prediction.py - Candidate descriptors
data_processing/featSelection.py - Activity report
prediction.py
Other components
- Researcher
Connections 16
- Bioactivity data → EDA and curation: reads
data_processing/eda.py - EDA and curation → Molecular features: calculates
data_processing/eda.py - EDA and curation → Curated datasets: writes
data_processing/eda.py - Curated datasets → Class balancing: reads
data_processing/class_imbalance.py - Class balancing → Training and test splits: writes
data_processing/class_imbalance.py - Training and test splits → Agonist RF training: trains from
ml_prediction/agonist_rf.py - Training and test splits → Antagonist RF training: trains from
ml_prediction/antagonist_rf.py - Agonist RF training → Agonist model: saves
ml_prediction/agonist_rf.py - Antagonist RF training → Antagonist model: saves
ml_prediction/antagonist_rf.py - Researcher → SMILES prediction CLI: enters SMILES
README.md - SMILES prediction CLI → Candidate descriptors: calculates
prediction.py - SMILES prediction CLI → Agonist model: loads and predicts
prediction.py - SMILES prediction CLI → Antagonist model: loads and predicts
prediction.py - SMILES prediction CLI → Activity report: reports
prediction.py - Model loader → Agonist model: loads
ml_prediction/eval.py - Model loader → Antagonist model: loads
ml_prediction/eval.py