This repository contains the code and data for "Dual-view jointly learning improves personalized drug synergy prediction"

- python 3.9.12
- numpy >= 1.23.5
- pandas >= 1.5.2
- pytorch >= 1.13.1
- torchvision >= 0.14.1
- dgl >= 0.9.0
- scikit-learn >= 1.3.2
- scipy >= 1.10.1
- rdkit >= 2022.03.2
- networkx >= 2.8.6
The O'Neil and NCI-ALMANAC drug synergy datasets were downloaded from the DrugComb database and removed outliers. The detailed processes of data preprocessing are as follows taking O'Neil for regression task as an example:
- Go to
./Data/O'Neilfolder. - Run
01-String_to_Int.ipynb, convert string to integers in the data set, which means encoding drugs and cell lines. - Run
02-Joint_SuperEdge_reg.ipynb, construct joint graph using Super Edge method. - The files in
./Data/O'Neil/Preprocessed/regare the input file of the JointSyn for regression task.
# for regression task
cd Model/JointSyn_reg
python main.py
# for classification task
cd Model/JointSyn_cls
python main.pySet split_flag=1, train_flag=1 and test_flag=1 in main.py. Put the preprocessed data into ./Model/JointSyn_reg/rawData folder.
Use the saved weights predict the novel drug-drug-cell line. Set split_flag=0, train_flag=0 and test_flag=1 in main.py. Put the saved weights into ./Model/JointSyn_reg/save folder.