A python package for comparing drugs based on the semantic distance between the MeSH headings of their ChEMBL indications. Methodology includes an graph theory and information theory algorithm as well as a kernel combining an RBF kernel and overlap coefficient.
python3 computeDistances.py -n 10
When this takes too long, run the commands in pipeline.sh
that split the work across different SLURM jobs (child.sh
) and then append the results.
usage: computeDistances.py [-h] [-n NUM_CPUS] [-r ROWS]
Compute the semantic distance between drugs in ChEMBL using the MeSH headings of their indications.
optional arguments:
-h, --help show this help message and exit
-n NUM_CPUS, --num-cpus NUM_CPUS
The number of cpus to use. Default is 4.
-r ROWS, --rows ROWS The number of rows of ChEMBL indications to use. Default is all.
computeDistances.py utilizes NetworkX, multiprocessing, and curated files from ChEMBL and MeSH to quickly calculate the semantic distance between all drugs in ChEMBL.
Data generated from this script will be used to add a new similarity metric to the Small Molecule Suite. We also anticipate clustering drugs based on their semantic distance to verify accurate similarity computations.