diff --git a/data/.gitignore b/data/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..6f8cd6338cce6b214cdbe5a3677699e24a5707cf --- /dev/null +++ b/data/.gitignore @@ -0,0 +1 @@ +data.zip diff --git a/data/Networks/internal_APID_ChEMBL.gt b/data/Networks/internal_APID_ChEMBL.gt index 2acaf64a4ad93bc4816d75d1a482780b50e5722e..dbf194d7be8fcd0cf29ee2cfdb9a1d68ff34a928 100755 Binary files a/data/Networks/internal_APID_ChEMBL.gt and b/data/Networks/internal_APID_ChEMBL.gt differ diff --git a/data/Networks/internal_APID_DGIdb.gt b/data/Networks/internal_APID_DGIdb.gt index 9845e5839168745be7f046ebf35ba37193e1c157..c02f8cccfef229ff647b5064e4daa455102ae30f 100755 Binary files a/data/Networks/internal_APID_DGIdb.gt and b/data/Networks/internal_APID_DGIdb.gt differ diff --git a/data/Networks/internal_APID_DrugBank.gt b/data/Networks/internal_APID_DrugBank.gt index c1334ded9beba26f68b1629a9a75d512eb71fc3c..eaf6c74bc9d3a9f96ee070cd41af80e21453517b 100755 Binary files a/data/Networks/internal_APID_DrugBank.gt and b/data/Networks/internal_APID_DrugBank.gt differ diff --git a/data/Networks/internal_APID_NeDRex.gt b/data/Networks/internal_APID_NeDRex.gt new file mode 100644 index 0000000000000000000000000000000000000000..6ea92296d61f4175a0fa306de92dc8e1cb0b7660 Binary files /dev/null and b/data/Networks/internal_APID_NeDRex.gt differ diff --git a/data/Networks/internal_BioGRID_ChEMBL.gt b/data/Networks/internal_BioGRID_ChEMBL.gt index 6bc34f74ab07b62127479f4bcee14eb264598d4c..850d5bbc44324dda6e2b97a1b3ab2d3585f188a6 100755 Binary files a/data/Networks/internal_BioGRID_ChEMBL.gt and b/data/Networks/internal_BioGRID_ChEMBL.gt differ diff --git a/data/Networks/internal_BioGRID_DGIdb.gt b/data/Networks/internal_BioGRID_DGIdb.gt index c92ed09666e21ab9f42bfe50467659154bb6795d..1bcbf3bce6853078089263e80495a370939fb6cd 100755 Binary files a/data/Networks/internal_BioGRID_DGIdb.gt and b/data/Networks/internal_BioGRID_DGIdb.gt differ diff --git a/data/Networks/internal_BioGRID_DrugBank.gt b/data/Networks/internal_BioGRID_DrugBank.gt index de11a0a60ba4e5c235a91cef7610b67229f81e47..5c118ec5a15deef860878e4c71e8df4d15157bcf 100755 Binary files a/data/Networks/internal_BioGRID_DrugBank.gt and b/data/Networks/internal_BioGRID_DrugBank.gt differ diff --git a/data/Networks/internal_BioGRID_NeDRex.gt b/data/Networks/internal_BioGRID_NeDRex.gt new file mode 100644 index 0000000000000000000000000000000000000000..f4646e18f8d08d46a50a04ffc95c958295ab7fd7 Binary files /dev/null and b/data/Networks/internal_BioGRID_NeDRex.gt differ diff --git a/data/Networks/internal_NeDRex_ChEMBL.gt b/data/Networks/internal_NeDRex_ChEMBL.gt new file mode 100644 index 0000000000000000000000000000000000000000..443d881091b3d8be0e8baa6d367810090d94bbb3 Binary files /dev/null and b/data/Networks/internal_NeDRex_ChEMBL.gt differ diff --git a/data/Networks/internal_NeDRex_DGIdb.gt b/data/Networks/internal_NeDRex_DGIdb.gt new file mode 100644 index 0000000000000000000000000000000000000000..0c14421eecddbce924e80a55cc9bbc832fff46b1 Binary files /dev/null and b/data/Networks/internal_NeDRex_DGIdb.gt differ diff --git a/data/Networks/internal_NeDRex_DrugBank.gt b/data/Networks/internal_NeDRex_DrugBank.gt new file mode 100644 index 0000000000000000000000000000000000000000..e00195ba3ac70dc33f314a20e9bff1795f56f92f Binary files /dev/null and b/data/Networks/internal_NeDRex_DrugBank.gt differ diff --git a/data/Networks/internal_NeDRex_NeDRex.gt b/data/Networks/internal_NeDRex_NeDRex.gt new file mode 100644 index 0000000000000000000000000000000000000000..5c11434ef5cb2a13cb802982e1cd2914b22170a3 Binary files /dev/null and b/data/Networks/internal_NeDRex_NeDRex.gt differ diff --git a/data/Networks/internal_STRING_ChEMBL.gt b/data/Networks/internal_STRING_ChEMBL.gt index 3c7989751227d48ef98929d97b97c905b102ce3a..8764ba363c3266bd1d17c350e2aa1219f1d4dc24 100755 Binary files a/data/Networks/internal_STRING_ChEMBL.gt and b/data/Networks/internal_STRING_ChEMBL.gt differ diff --git a/data/Networks/internal_STRING_DGIdb.gt b/data/Networks/internal_STRING_DGIdb.gt index dc0879f419e34e5f1365e27fc0e9f04aba3f4b73..defa5a420e0650eb7ebedc3484f94923d48c33c1 100755 Binary files a/data/Networks/internal_STRING_DGIdb.gt and b/data/Networks/internal_STRING_DGIdb.gt differ diff --git a/data/Networks/internal_STRING_DrugBank.gt b/data/Networks/internal_STRING_DrugBank.gt index 46bfa9110298057abd266c9f2f087c8eb8d1ec1b..bb58c6a793bcfa05a41c9b327bff95bf86f7d1a1 100755 Binary files a/data/Networks/internal_STRING_DrugBank.gt and b/data/Networks/internal_STRING_DrugBank.gt differ diff --git a/data/Networks/internal_STRING_NeDRex.gt b/data/Networks/internal_STRING_NeDRex.gt new file mode 100644 index 0000000000000000000000000000000000000000..2da41415db9c7a8abf82cec3c04cff031e01f703 Binary files /dev/null and b/data/Networks/internal_STRING_NeDRex.gt differ diff --git a/docker-compose.yml b/docker-compose.yml index aed9f483dedaf6cd6d3d2f181b4dc69d5214382e..05c85e64064e9b7d8b020a912b9355190bbfef6d 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,7 +15,7 @@ services: - drugstone_db_schema_volume:/usr/src/drugstone/drugstone/migrations - drugstone_data_volume:/usr/src/drugstone/data ports: - - 8002:8000 + - 8001:8000 networks: - drugstone_net depends_on: @@ -26,8 +26,8 @@ services: container_name: drugstone_postgres restart: always hostname: drugstone_postgres -# ports: -# - 5432:5432 + ports: + - 5432:5432 networks: - drugstone_net volumes: @@ -95,8 +95,8 @@ networks: volumes: drugstone_db_volume: - external: true +# external: true drugstone_db_schema_volume: - external: true +# external: true drugstone_data_volume: - external: true \ No newline at end of file +# external: true \ No newline at end of file diff --git a/drugstone/management/commands/test.py b/drugstone/management/commands/test.py deleted file mode 100644 index 4d01dd45c09e844124c1d244516d543bda8d9c58..0000000000000000000000000000000000000000 --- a/drugstone/management/commands/test.py +++ /dev/null @@ -1,51 +0,0 @@ -import python_nedrex as nedrex -from python_nedrex.core import get_nodes, get_edges, get_api_key -from python_nedrex.static import get_metadata - -def iter_node_collection(coll_name, eval): - offset = 0 - limit = 10000 - while True: - result = get_nodes(coll_name, offset=offset, limit=limit) - if not result: - return - for node in result: - eval(node) - offset += limit - - -def iter_edge_collection(coll_name, eval): - offset = 0 - limit = 10000 - while True: - result = get_edges(coll_name, offset=offset, limit=limit) - if not result: - return - for edge in result: - eval(edge) - offset += limit - - -def iter_ppi(eval): - from python_nedrex import ppi - offset = 0 - limit = 1000 - while True: - result = ppi.ppis({"exp"},skip = offset, limit=limit) - if not result: - return - for edge in result: - eval(edge) - offset += limit - -base_url = "http://82.148.225.92:8123/" -nedrex.config.set_url_base(base_url) -api_key = get_api_key(accept_eula=True) -nedrex.config.set_api_key(api_key) -print(f'Nodes: {nedrex.core.get_node_types()}') -print(f'Edges: {nedrex.core.get_edge_types()}') -print(f'{get_metadata()}') - - -iter_ppi(lambda node: print(node)) -# iter_edge_collection("gene_expressed_in_tissue", lambda node: {print(node)}) \ No newline at end of file diff --git a/drugstone/models.py b/drugstone/models.py index 4f160dbe5101281d53520f54a353835cf9c10570..5391a43d5383bf0ca5c3c5fbabe248714fada698 100755 --- a/drugstone/models.py +++ b/drugstone/models.py @@ -129,6 +129,9 @@ class Disorder(models.Model): def __ne__(self, other): return not self.__eq__(other) + def __hash__(self): + return hash((self.mondo_id, self.label, self.icd10)) + def update(self, other): self.mondo_id = other.mondo_id self.label = other.label @@ -152,6 +155,9 @@ class Drug(models.Model): def __ne__(self, other): return not self.__eq__(other) + def __hash__(self): + return hash((self.drug_id, self.name, self.status)) + def update(self, other): self.drug_id = other.drug_id self.name = other.name diff --git a/drugstone/views.py b/drugstone/views.py index 6491d095b57ff99685997c02b63e6a61510e1b43..7822f3ab63e84c4c813a2d569fd290b8d3c0f207 100755 --- a/drugstone/views.py +++ b/drugstone/views.py @@ -531,7 +531,7 @@ def adjacent_disorders(request) -> Response: data = request.data if 'proteins' in data: drugstone_ids = data.get('proteins', []) - pdi_dataset = 'DisGeNET' + pdi_dataset = data.get('dataset','DisGeNET') # find adjacent drugs by looking at drug-protein edges pdis_objects = ProteinDisorderAssociation.objects.filter(protein__id__in=drugstone_ids, pdis_dataset__name=pdi_dataset) @@ -541,7 +541,7 @@ def adjacent_disorders(request) -> Response: disorders = DisorderSerializer(many=True).to_representation(disorders) elif 'drugs' in data: drugstone_ids = data.get('drugs', []) - drdi_dataset = 'DrugBank' + drdi_dataset = data.get('dataset','DrugBank') # find adjacent drugs by looking at drug-protein edges drdi_objects = DrugDisorderIndication.objects.filter(drug__id__in=drugstone_ids, drdi_dataset__name=drdi_dataset) diff --git a/scripts/docker-entrypoint.sh b/scripts/docker-entrypoint.sh index 6dc4cd8b33ca3885b1507ec6296168651dcde399..c033d37ff042ec5966a07a83d151d164ae58caf5 100755 --- a/scripts/docker-entrypoint.sh +++ b/scripts/docker-entrypoint.sh @@ -1,6 +1,6 @@ #!/bin/bash -file="docker-entrypoint.lock" +file="data/docker-entrypoint.lock" # exit if entrypoint.lock exists to prevent new import of data every time docker is restarted @@ -13,7 +13,6 @@ if ! test -f "$file"; then python3 manage.py cleanuptasks python3 manage.py populate_db -u --all python3 manage.py make_graphs - touch $file fi