Commit 2636d29c authored by Maria Marin's avatar Maria Marin

Upload New File

parent 83affd2a
# Analysis
## Repository content
| NAME | DESCRIPTION |
|-----------------------|------------------------ -------------------------------------------------- ---------------|
| [figures]() | Directory with the figures generated as a result of the analysis|
| files() | Directory with the intermediate files used during the analysis |
| results() | Directory with the files generated as a result of the analysis |
|[schizophrenia]() | Directory with the Jupyter Notebooks and Python scripts employed to study drug repusposing candidates for schizophrenia |
| [total diseases analysis.ipynb]() | Jupyter Notebook used to analyze the disease module size and the proximity disease-drug for 495 diseases as a previous step to obtain the proximity distribution files (in results) that will be used in the analysis carried out for schizophrenia |
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="475.2pt" height="360pt" viewBox="0 0 475.2 360" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2024-03-25T13:59:19.102751</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.8.0, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 360
L 475.2 360
L 475.2 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
</g>
</svg>
Drugs,Gene symbol,log(Fold Change),Corrected pvalue
CHEMBL413,FGF2,0.262194915301407,0.0001663143107123
CHEMBL629,NTRK2,0.215842149854464,0.0005334841403452
CHEMBL717,ABCB1,-0.19259430589577,0.0011518294091511
CHEMBL472,ABCA1,0.18596862999644,8.3409820679652e-05
CHEMBL608,ABCA1,0.18596862999644,8.3409820679652e-05
CHEMBL86304,MAOA,0.141364018163515,0.0007876002881378
CHEMBL1201168,MAOA,0.141364018163515,0.0007876002881378
CHEMBL1574,MAOA,0.141364018163515,0.0007876002881378
CHEMBL1201201,MAOA,0.141364018163515,0.0007876002881378
CHEMBL972,MAOA,0.141364018163515,0.0007876002881378
CHEMBL278819,MAOA,0.141364018163515,0.0007876002881378
CHEMBL1089,MAOA,0.141364018163515,0.0007876002881378
CHEMBL673,MAOA,0.141364018163515,0.0007876002881378
CHEMBL750,MAOA,0.141364018163515,0.0007876002881378
CHEMBL37744,MAOA,0.141364018163515,0.0007876002881378
CHEMBL941,DDR1,0.124057530881635,0.0079332374104671
CHEMBL607,GRIN2C,0.122802787266293,0.0057675281998525
CHEMBL930,GLUL,0.105690036807368,0.0101258664300799
CHEMBL90593,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL264374,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL457,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL1297,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL23588,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL633,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL557555,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL565,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL521,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL6,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL672,PPARA,0.0995849269559933,0.0094860300493365
CHEMBL3137309,BCL2,0.0931726845904655,0.0138753870077204
CHEMBL521,BCL2,0.0931726845904655,0.0138753870077204
CHEMBL428647,BCL2,0.0931726845904655,0.0138753870077204
CHEMBL887,BCL2,0.0931726845904655,0.0138753870077204
CHEMBL1088977,CBS,0.0802567480856852,0.0111248339342028
CHEMBL1286,SV2A,-0.0753815769457941,0.0050610575822867
CHEMBL607400,SV2A,-0.0753815769457941,0.0050610575822867
CHEMBL113,PIK3CB,-0.0654377622012529,0.0380665474160753
CHEMBL1200733,ATP2A2,-0.0573001962598098,0.0164116692300517
CHEMBL701,GABBR2,-0.055808229356042,0.0347092303857617
CHEMBL896,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL1423,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL471,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL479,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL631,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL83,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL12713,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL517,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL43,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL998,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL623,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL2,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL533,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL296419,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL1008,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL473,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL640,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL709,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL462605,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL723,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL1294,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL16,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL71,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL532,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL6966,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL652,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL184412,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL1107,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL157101,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL611,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL11,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL1628227,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL17157,KCNH2,-0.0508555360118699,0.0233144571011437
CHEMBL41,KCNH2,-0.0508555360118699,0.0233144571011437
This diff is collapsed.
Drugs,Closest distance,Dc_zscore
CHEMBL623,0.3,-115.57962872808126
CHEMBL113,0.3636363636363636,-103.5128460079722
CHEMBL941,0.5,-94.87934739957429
CHEMBL1628227,0.3529411764705882,-90.84425264943393
CHEMBL17157,0.4285714285714285,-87.50885056097165
CHEMBL83,0.4285714285714285,-85.95038070535077
CHEMBL930,0.5,-78.56768686211016
CHEMBL23588,0.5,-77.73657144185727
CHEMBL640,0.3333333333333333,-75.75625189325385
CHEMBL709,0.5,-74.36576498963095
CHEMBL278819,0.3333333333333333,-65.01494476738038
CHEMBL652,0.5,-51.71753701225944
CHEMBL413,0.3333333333333333,-22.765103095067783
CHEMBL43,0.5,-8.866920486283584
This diff is collapsed.
# Schizophrenia
Python scripts and Jupyter Notebooks used to apply Network Medicine concepts
in order to characterize the disease module of schizophrenia and determine the proximity between the neurological condition and drugs.
## Repository content
| NAME | DESCRIPTION |
|-----------------------|------------------------ -------------------------------------------------- ---------------|
| [DGE.ipynb]() | Jupyter Notebook used for analyze the Differential Gene Expression (DGE) data |
| [disease module and proximity.ipynb]() | Jypyter Notebook used to characterize the disease module of schizophrenia and determine the closest distance and proximity between the neurologicalcondition and drugs|
| [repurposing.ipynb]() | Jupyter Notebook used to identify drug repurposing candidates for schizophrenia based on the results obtained in the differential gene expression, distance and proximity analyses |
| [functions_network_medicine_schizo.py]() | Python script with the functions implemented in the Jupyter Notebooks |
## Methodology of the analysis
### Characterization of the disease module
1. Generation of the **interactome**.
2. Definition of **pathological proteins**.
3. Development of the **subgraph** of the disease.
4. Identification of the **module** of the disease.
5. **Statistical validation** of the disease modules.
### Determination of disease-drug proximity
1. **Distance** between disease modules and drugs: closest distance *\(d<sub>c</sub>\)*.
2. **Proximity** between disease modules and drugs: distance z-score.
### Differential Gene Expression analysis
Identification of genes that may be potential therapeutic targets depending on whether they meet the following criteria:
1. Differentially expressed in patients with schizophrenia
2. Significantly correlated with the genes belonging to its co-expression module in different psyhiatric and neurological diseases (PNDs).
3. Part of disease module.
Data regarding the DGE and the co-expression modules were obtained, respectively, from the supplementary material of ... and ...
## Criteria for identifying drug repurposing candidates:
1. Distance to schizophrenia module between Q1 and median of distance values across treatment drugs.
2. Proximal to disease module (z-score of distance less than or equal to -0.15).
3. Targetting potential therapeutic targets identificated previously.
This diff is collapsed.
This diff is collapsed.
{
"cells": [
{
"cell_type": "code",
"execution_count": 28,
"id": "b987b5e5-3a96-46dc-ad64-08edeb477a6c",
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"import seaborn as sns\n",
"import matplotlib.pyplot as plt\n",
"import networkx as nx\n",
"from tabulate import tabulate\n",
"from networkx.algorithms import bipartite\n",
"import random\n",
"from scipy.stats import norm\n",
"from itertools import combinations\n",
"import re\n",
"from itertools import product\n"
]
},
{
"cell_type": "markdown",
"id": "fe4b1e17-fa87-42d9-a28d-e53aebb77943",
"metadata": {},
"source": [
"### Data"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "c5bf61fe-29af-40b6-a85e-f5453c2b4b30",
"metadata": {},
"outputs": [],
"source": [
"proximity = pd.read_csv(\"../results/Proximity_results.csv\", sep = \",\")\n",
"dge = pd.read_csv(\"../results/Filtering_by_DGE_results.csv\", sep = \",\")"
]
},
{
"cell_type": "markdown",
"id": "9a70afe4-73a7-4436-a8d9-14deba773032",
"metadata": {},
"source": [
"### Filtering of drug repurposing candidates"
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "06d790a3-6c11-4724-9ed3-0c764083243f",
"metadata": {},
"outputs": [],
"source": [
"# filtering of schizophrenia data\n",
"proximity_schizo = proximity[proximity[\"ID\"] == \"C0036341\"]"
]
},
{
"cell_type": "markdown",
"id": "07ae6a91-08a8-4bab-97c2-b47070875c48",
"metadata": {},
"source": [
"#### 1) Proximal drugs to schizophrenia module"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "493872db-4d45-4ca6-a613-d0adafacd5c7",
"metadata": {},
"outputs": [],
"source": [
"proximal_drugs_schizo = proximity_schizo[(proximity_schizo[\"Dc_zscore\"] <= -0.15) & \n",
" (proximity_schizo[\"Treatment\"] == \"unknown\")]"
]
},
{
"cell_type": "markdown",
"id": "4e3e28c3-f78d-4d20-9745-3d28dad6838a",
"metadata": {},
"source": [
"#### 2) Distance to schizophrenia module"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "1f33226f-a0b8-4d76-be20-f82ca3851d6e",
"metadata": {},
"outputs": [],
"source": [
"# Q1 and median of closest distance for treatment drugs\n",
"\n",
"treatment_schizo = proximity_schizo[proximity_schizo[\"Treatment\"] == \"yes\"]\n",
"Q1_treatment = treatment_schizo[\"Closest distance\"].quantile(0.25)\n",
"median_treatment = treatment_schizo[\"Closest distance\"].quantile(0.5)"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "79a8a797-2089-4c60-bcb3-690de1bdbec6",
"metadata": {},
"outputs": [],
"source": [
"# Unknown drugs with distance to schizophrenia module between Q1 and nedian of treatment drugs\n",
"\n",
"closest_drugs_schizo = proximal_drugs_schizo[(proximal_drugs_schizo[\"Closest distance\"] >= Q1_treatment) &\n",
" (proximal_drugs_schizo[\"Closest distance\"] <= median_treatment)]"
]
},
{
"cell_type": "markdown",
"id": "d6f6a702-06ee-4d94-8982-1ff4659b8dbc",
"metadata": {},
"source": [
"#### 3) Targets with significant DGE in schizophrenia and correlated with its co-expression module"
]
},
{
"cell_type": "code",
"execution_count": 34,
"id": "0665674b-9fbd-4855-9785-7a93b1907540",
"metadata": {},
"outputs": [],
"source": [
"drugs_in_dge = dge[\"Drugs\"].unique()\n",
"drugs_schizo_filtered = closest_drugs_schizo[(closest_drugs_schizo[\"Drugs\"].isin(drugs_in_dge))]"
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "418c6fb7-4a32-407e-bb35-9c13804d1dbf",
"metadata": {},
"outputs": [],
"source": [
"proximity_schizo_filtered = drugs_schizo_filtered.sort_values(by=\"Dc_zscore\")"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "c6dbe376-fca9-43c1-9c76-cad14964f703",
"metadata": {},
"outputs": [],
"source": [
"proximity_schizo_filtered = proximity_schizo_filtered.drop('ID', axis=1).drop('Treatment', axis=1).drop('Dc_std', axis=1).drop('Dc_mean', axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "05f3dce7-b0ea-4ce3-b06a-52c52f3bb7a7",
"metadata": {},
"outputs": [],
"source": [
"proximity_schizo_filtered.to_csv(\"../results/Repurposing candidates schizophrenia.csv\", index = False)"
]
},
{
"cell_type": "markdown",
"id": "12a5a03c-76c7-4817-a596-2e89724302d4",
"metadata": {},
"source": [
"### MeSH Pharmacological Actions"
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "73e12501-9ea1-4d08-a87a-88a30036d1d8",
"metadata": {},
"outputs": [],
"source": [
"categories = pd.read_csv(\"../files/drug_categories.csv\", sep = \",\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "2b7c78db-7596-4759-a5e1-50d9e121abb4",
"metadata": {},
"outputs": [],
"source": [
"merged_drugs = pd.merge(proximity_schizo_filtered, dge[['Drugs', 'Gene symbol']], on='Drugs')\n",
"merged_drugs = pd.merge(merged_drugs, categories[['drug_id', 'class_name', 'type']], left_on='Drugs', right_on='drug_id')\n",
"\n",
"drugs_classification = merged_drugs[merged_drugs['class_name'].str.contains('Agents')]\n",
"\n",
"drugs_classification = drugs_classification[['Drugs', 'Closest distance', 'Dc_zscore', 'Gene symbol', 'class_name', 'type']]\n",
"drugs_classification.columns = ['Drugs', 'Closest distance', 'Proximity', 'Gene target', 'Classification', 'Type']\n"
]
},
{
"cell_type": "code",
"execution_count": 40,
"id": "21abf2e1-c9df-47ab-86a7-0bcf5523b0ba",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Drugs Closest distance Proximity Gene target \\\n",
"1 CHEMBL623 0.300000 -115.579629 KCNH2 \n",
"8 CHEMBL113 0.363636 -103.512846 PIK3CB \n",
"11 CHEMBL113 0.363636 -103.512846 PIK3CB \n",
"15 CHEMBL941 0.500000 -94.879347 DDR1 \n",
"20 CHEMBL1628227 0.352941 -90.844253 KCNH2 \n",
"28 CHEMBL83 0.428571 -85.950381 KCNH2 \n",
"30 CHEMBL83 0.428571 -85.950381 KCNH2 \n",
"34 CHEMBL23588 0.500000 -77.736571 PPARA \n",
"35 CHEMBL640 0.333333 -75.756252 KCNH2 \n",
"39 CHEMBL709 0.500000 -74.365765 KCNH2 \n",
"43 CHEMBL278819 0.333333 -65.014945 MAOA \n",
"44 CHEMBL652 0.500000 -51.717537 KCNH2 \n",
"47 CHEMBL413 0.333333 -22.765103 FGF2 \n",
"49 CHEMBL413 0.333333 -22.765103 FGF2 \n",
"50 CHEMBL413 0.333333 -22.765103 FGF2 \n",
"53 CHEMBL43 0.500000 -8.866920 KCNH2 \n",
"\n",
" Classification Type \n",
"1 Antidepressive Agents, Second-Generation MESHPA \n",
"8 Anti-Inflammatory Agents, Non-Steroidal MESHPA \n",
"11 Antimutagenic Agents MESHPA \n",
"15 Antineoplastic Agents MESHPA \n",
"20 Antidepressive Agents, Tricyclic MESHPA \n",
"28 Antineoplastic Agents, Hormonal MESHPA \n",
"30 Bone Density Conservation Agents MESHPA \n",
"34 Anti-Inflammatory Agents MESHPA \n",
"35 Anti-Arrhythmia Agents MESHPA \n",
"39 Urological Agents MESHPA \n",
"43 Antidepressive Agents MESHPA \n",
"44 Anti-Arrhythmia Agents MESHPA \n",
"47 Anti-Bacterial Agents MESHPA \n",
"49 Antifungal Agents MESHPA \n",
"50 Immunosuppressive Agents MESHPA \n",
"53 Antineoplastic Agents MESHPA \n"
]
}
],
"source": [
"merged_drugs = pd.merge(proximity_schizo_filtered, dge[['Drugs', 'Gene symbol']], on='Drugs')\n",
"merged_drugs = pd.merge(merged_drugs, categories[['drug_id', 'class_name', 'type']], left_on='Drugs', right_on='drug_id')\n",
"\n",
"drugs_classification = merged_drugs[merged_drugs['class_name'].str.contains('Agents')]\n",
"\n",
"drugs_classification = drugs_classification[['Drugs', 'Closest distance', 'Dc_zscore', 'Gene symbol', 'class_name', 'type']]\n",
"drugs_classification.columns = ['Drugs', 'Closest distance', 'Proximity', 'Gene target', 'Classification', 'Type']\n",
"\n",
"\n",
"print(drugs_classification)"
]
},
{
"cell_type": "code",
"execution_count": 75,
"id": "447d822e-7e21-45fa-993e-53659fda6fc5",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "e3898d83-c1ed-4c95-88d5-eca1ae6debe6",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment