NCATSTranslator / minihackathons

MIT License
5 stars 5 forks source link

Workflow B: Drug Repurposing - DILI #33

Closed karafecho closed 3 years ago

karafecho commented 3 years ago

B.1_DILI-three-hop-from-disease-or-phenotypic-feature.trapi

This query runs from DiseaseOrPhenotypicFeature to Gene to ChemicalSubstance.

For reference, here is the workflow mural board.

Here is a related Workflow B mini-hackathon notebook.

Example 3-hop TRAPI 1.1 query, original workflow, drug-induced liver injury (MONDO:0005359) as input CURIE.

Additional DiseaseOrPhenotypicFeature names (identifiers): toxic liver disease with acute hepatitis (SNOMEDCT:197358007), chronic DILI (MESH:D056487), hospitalization (MESH:D006760), transplanted liver complication (NCIT:C26991).

Note that this query should return results from ARAX if condition_associated_with_gene is flipped to gene_associated_with_condition

 {
   "nodes": {
    "n0": {
       "name": "drug-induced liver injury",
       "ids": ["MONDO:0005359"]
     },
     "n1": {
       "categories": [
         "biolink:DiseaseOrPhenotypicFeature"
       ],
       "name": "Disease Or Phenotypic Feature"
     },
     "n2": {
       "categories": [
         "biolink:Gene"
       ],
       "name": "Gene"
     },
     "n3": {
       "categories": [
         "biolink:ChemicalSubstance"
      ],
       "name": "Chemical Substance"
     }
   },
   "edges": {
     "e0": {
       "subject": "n0",
       "object": "n1",
       "predicates": [
         "biolink:correlated_with"
       ]
     },
     "e1": {
       "subject": "n1",
       "object": "n2",
       "predicates": [
         "biolink:condition_associated_with_gene"
       ]
     },
     "e2": {
       "subject": "n2",
       "object": "n3",
       "predicates": [
         "biolink:related_to"
       ]
     }
   }
 }
karafecho commented 3 years ago

B.2_DILI-4-hop-from-disease-or-phenotypic-feature.trapi

Example 4-hop TRAPI 1.0 query, original workflow, drug-induced liver injury (MONDO:0005359) as input CURIE.

TRAPI 1.0 query replaced with Mark's TRAPI 1.1 query below

karafecho commented 3 years ago

B.3_DILI-one-hop-from-gene.trapi

Example 1- hop TRAPI 1.1 query, revised workflow, EXOC4 (NCBIGene:600412), as starting point.

 {
 "message": {
 {
 "query_graph": {
 {
   "nodes": {
     "n0": {
       "name": "EXOCYST4",
       "ids": ["NCBI:60412"]
     },
     "n1": {
       "categories": [
         "biolink:ChemicalSubstance"
       ],
       "name": "Chemical Substance"
     }
   },
   "edges": {
     "e0": {
       "subject": "n0",
       "object": "n1",
       "predicates": [
         "biolink:related_to"
       ]
      }
     }
   }
  }
}
MarkDWilliams commented 3 years ago

I had some issues with the converter script, but put this together by hand in the meantime for the 4-hop

{
    "nodes": {
        "n0": {
            "name": "drug-induced liver injury",
            "ids": ["MONDO:0005359"]
        },
        "n1": {
            "categories": [
                "biolink:DiseaseOrPhenotypicFeature"
            ],
            "name": "Disease Or Phenotypic Feature"
        },
        "n2": {
            "categories": [
                "biolink:Gene"
            ],
            "name": "Gene"
        },
        "n3": {
            "categories": [
                "biolink:ChemicalSubstance"
            ],
            "name": "Chemical Substance"
        }
    },
    "edges": {
        "e0": {
            "subject": "n0",
            "object": "n1",
            "predicates": [
                "biolink:correlated_with"
            ]
        },
        "e1": {
            "subject": "n1",
            "object": "n2",
            "predicates": [
                "biolink:condition_associated_with_gene"
            ]
        },
        "e2": {
            "subject": "n2",
            "object": "n3",
            "predicates": [
                "biolink:related_to"
            ]
        },
        "e3": {
            "subject": "n3",
            "object": "n1",
            "predicates": [
                "biolink:related_to"
            ]
        }
    }
}
andrewsu commented 3 years ago

Here's the TRAPI for the "alternate" one-hop starting from EXOC4, PTPN22, ERAP2: https://gist.github.com/andrewsu/884e0c84a299b4ccaba6f856581b8cef

relative to what's posted in https://github.com/NCATSTranslator/minihackathons/issues/33#issuecomment-858664042, I changed NCBI to NCBIGene and added the top level message and query_graph keys...

karafecho commented 3 years ago

ARS API https://ars.transltr.io/ars/api/messages/YourPKHere?trace=y

ARAX UI https://arax.ncats.io/beta/

1-hop from MONDO:0005359 (DILI) PK=2400c449-83e6-4d14-b68e-78d95ba47e17

3-hop from MONDO:0005359 (DILI) PK=8e0becb4-4451-43a1-8465-38f4dd7c8e59

3-hop from SNOMEDCT:197358007 (toxic liver disease with acute hepatitis) PK=dcb6b15a-0b30-4922-a7bf-5b044d166d8a

3-hop from SNOMEDCT:197358007 (toxic liver disease with acute hepatitis) PK=7aed5a19-bce9-4658-96e9-57a412b98591

karafecho commented 3 years ago

From David K. via Slack:

Ok, so I found the issue: ARAX didn't like the reversed condition_associated_with_gene predicate. If you reverse it (gene_associated_with_condition), then it does work: https://arax.ncats.io/beta/?r=12696 (click the DSL tab to see the query; note that it's not hitting ICEES+ since we have not implemented the new 1-hop endpoint yet). Also, there are 2,253 nodes n3 found, so without some overlaying of additional information, it would be hard to rank them. Adding some of that in (NGD+Fisher exact) gives: https://arax.ncats.io/beta/?r=12700

This is extremely helpful, David. Thanks!

cbizon commented 3 years ago

Which is the canonical direction in biolink 2?

karafecho commented 3 years ago

I believe that gene_associated_with_condition is the canonical predicate.

Also see #43, #44, #45, and #46.

Note that this issue will be closed after NCATS opens permissions for the above issues.

karafecho commented 3 years ago

Replaced with #43, #44, #45, #46, and #48.