A Systems-Level Machine Learning Approach Uncovers Therapeutic Targets in Clear Cell Renal Cell Carcinoma
Ruhrberg Estévez, S., Baltusyte, G., Youssef, G. et al. npj Drug Discov. 3, 5 (2026).
We present a generalisable, interpretable machine learning framework for therapeutic target discovery using single-cell transcriptomics, protein interaction networks, and drug proximity analysis. The pipeline integrates feature selection via gradient boosting classifiers, systems-level network inference, and in silico drug repurposing, enabling the identification of actionable targets with cellular specificity. As a proof of concept, we apply the method to clear cell renal cell carcinoma (ccRCC), an aggressive kidney cancer with limited treatment options. The model identifies 96 tumour-intrinsic genes, refines them to 16 targets through CRISPR screens and biological curation, and prioritises FDA-approved compounds via network-based proximity scoring. Several novel therapeutic mechanisms — including ABL1, CDK4/6, and JAK inhibition — emerge from this analysis, with predicted compounds showing superior efficacy to standard-of-care drugs across multiple ccRCC cell lines. Beyond ccRCC, this framework offers a scalable strategy for drug discovery across diverse diseases, combining machine learning interpretability with systems biology to accelerate therapeutic development.
├── 1_data_preprocessing/ # Data loading and annotation (US, Chinese, Harvard, metastatic datasets)
├── 2_feature_selection/ # UMAP visualisation, multiclass/single-class classifiers, univariate selection
├── 3_feature_validation/ # Validation across independent cohorts + ROC-AUC analysis
├── 4_drug_target_validation/ # Drug target validation across cohorts
├── 5_network_analysis/ # Protein interaction network construction, permutation tests, drug proximity
│ ├── databases/ # Network databases (PPI, drug-target)
│ └── src/ # Network analysis source code
├── 6_drug_validation/ # Hallmark gene sets, z-values, preclinical trial analysis
├── data/ # Gene lists, model files, predictions
├── output/ # Generated figures (ROC curves, UMAPs)
├── rcc.yml # Conda environment specification
└── overview.png # Pipeline overview figure
Create and activate the conda environment:
conda env create -f rcc.yml
conda activate rccNote: The network analysis module (
5_network_analysis/) optionally uses graph-tool, which must be installed separately via conda-forge:conda install -c conda-forge graph-tool
The pipeline is designed to be run in numbered order:
- Data Preprocessing (
1_data_preprocessing/) — Process raw scRNA-seq data and annotate datasets - Feature Selection (
2_feature_selection/) — Train classifiers and perform univariate feature selection - Feature Validation (
3_feature_validation/) — Validate selected genes across independent cohorts - Drug Target Validation (
4_drug_target_validation/) — Validate drug targets across cohorts - Network Analysis (
5_network_analysis/) — Build PPI networks, run permutation tests, compute drug proximity - Drug Validation (
6_drug_validation/) — Hallmark enrichment, z-score analysis, preclinical validation
| Package | Purpose |
|---|---|
lightgbm |
Gradient boosting classifier for feature selection |
scikit-learn |
Machine learning utilities and model evaluation |
shap |
Model interpretability via SHAP values |
umap-learn |
Dimensionality reduction for visualisation |
networkx |
Protein interaction network analysis |
mygene |
Gene annotation and ID mapping |
pyomo |
Optimisation for network proximity analysis |
scipy / statsmodels |
Statistical testing |
seaborn / matplotlib |
Plotting and visualisation |
If you use this code, please cite:
@article{ruhrberg2026systems,
title={A systems-level machine learning approach uncovers therapeutic targets in clear cell renal cell carcinoma},
author={Ruhrberg Est{\'e}vez, S. and Baltusyte, G. and Youssef, G. and others},
journal={npj Drug Discovery},
volume={3},
pages={5},
year={2026},
publisher={Nature Publishing Group},
doi={10.1038/s44386-025-00036-z}
}