Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Honghan committed Nov 6, 2019
2 parents 4f29e31 + bd6b079 commit c6b4358
Show file tree
Hide file tree
Showing 9 changed files with 236 additions and 4 deletions.
13 changes: 11 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## Knowledge Graph based Phenotyping on Heterogenous/Distributed Data Sources
## Knowledge Graph based Phenotyping on Heterogenous Data Sources
- towards interpretable, reusable, reproducible phenotype computation in clinical data science.
- a project funded by Health Data Research UK
- a project funded by [Health Data Research UK: Graph-Based Data Federation for Healthcare Data Science](https://www.hdruk.ac.uk/projects/graph-based-data-federation-for-healthcare-data-science/)

### Why & What
Extracting patient phenotypes from routinely collected health data (such as Electronic Health Records) requires translating clinically-sound phenotype definitions into queries/computations executable on the underlying data sources by clinical researchers. This requires significant knowledge and skills to deal with heterogeneous and often *imperfect* data. Translations are time-consuming, error-prone and, most importantly, hard to share and reproduce across different settings. This project implements a **knowledge driven phenotyping framework** that
1. decouples the specification of phenotype semantics from underlying data sources;
2. can automatically populate and conduct phenotype computations on heterogeneous data spaces.

### Architecture & Deployment
This framework has been deployed on five Scottish health datasets.
![alt text](https://raw.githubusercontent.com/Honghan/KGPhenotyping/master/assets/kg-phenotyping-arch.png "Architecture of Knowledge Driven Phenotyping")
Binary file added assets/kg-phenotyping-arch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
74 changes: 74 additions & 0 deletions evaluation/MEI2020-queries.MD
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Evaluation Queries for MIE 2020 Submission

## Q1: patients prescribed Fluoxetine (SNOMED CT code: 321949006)
SPARQL:
```SPARQL
PREFIX : <http://www.hdruk.ac.uk/sprint/graph/>
PREFIX test: <http://www.hdruk.ac.uk/sprint/graph/ontology/test/>
PREFIX onto: <http://www.hdruk.ac.uk/sprint/graph/ontology/>
PREFIX icd: <http://www.hdruk.ac.uk/sprint/graph/ontology/ICD/>
PREFIX patient: <http://www.hdruk.ac.uk/sprint/graph/patient/>
PREFIX RCTV2: <http://purl.bioontology.org/ontology/RCTV2/>
PREFIX bnf: <http://www.hdruk.ac.uk/sprint/graph/ontology/bnf/>
PREFIX snomed: <http://www.hdruk.ac.uk/sprint/graph/ontology/snomed/>
SELECT DISTINCT *
WHERE {
?x onto:hasPrescription ?p .
?p a snomed:321949006 .
}
```
SQL:
```SQL
select CHI from graph.Prescription where BnfCode='0403030E0AAAAAA'
```

## Q2: patients diagnosed as Type II Diabetes (ICD10 E11 and its sub-codes)
SPARQL:
```SPARQL
PREFIX : <http://www.hdruk.ac.uk/sprint/graph/>
PREFIX test: <http://www.hdruk.ac.uk/sprint/graph/ontology/test/>
PREFIX onto: <http://www.hdruk.ac.uk/sprint/graph/ontology/>
PREFIX icd: <http://www.hdruk.ac.uk/sprint/graph/ontology/ICD/>
PREFIX patient: <http://www.hdruk.ac.uk/sprint/graph/patient/>
PREFIX RCTV2: <http://purl.bioontology.org/ontology/RCTV2/>
PREFIX bnf: <http://www.hdruk.ac.uk/sprint/graph/ontology/bnf/>
PREFIX snomed: <http://www.hdruk.ac.uk/sprint/graph/ontology/snomed/>
SELECT DISTINCT *
WHERE {
?x a icd:E11 .
}
```
SQL:
```SQL
select CHI from graph.HospitalAdmissions where maincondition like 'E11%' or maincondition in
('-25000', '-25002', '-25010', '-25012', '-25020', '-25022', '-25030', '-25032', '-25040', '-25042', '-25050', '-25052', '-25060', '-25062', '-25070', '-25072', '-25080', '-25082', '-25090', '-25092')
```

## Q3: patients have potential Diabetes coding errors
SPARQL:
```SPARQL
PREFIX : <http://www.hdruk.ac.uk/sprint/graph/>
PREFIX test: <http://www.hdruk.ac.uk/sprint/graph/ontology/test/>
PREFIX onto: <http://www.hdruk.ac.uk/sprint/graph/ontology/>
PREFIX icd: <http://www.hdruk.ac.uk/sprint/graph/ontology/ICD/>
PREFIX patient: <http://www.hdruk.ac.uk/sprint/graph/patient/>
PREFIX RCTV2: <http://purl.bioontology.org/ontology/RCTV2/>
PREFIX bnf: <http://www.hdruk.ac.uk/sprint/graph/ontology/bnf/>
PREFIX snomed: <http://www.hdruk.ac.uk/sprint/graph/ontology/snomed/>
SELECT DISTINCT *
WHERE {
?x a onto:DiabetesConflictPatient .
}
```
SQL:
```SQL
select h1.CHI from graph.HospitalAdmissions h1, graph.HospitalAdmissions h2 where (h1.maincondition like 'E11%' or h1.maincondition in
('-25000', '-25002', '-25010', '-25012', '-25020', '-25022', '-25030', '-25032', '-25040', '-25042', '-25050', '-25052', '-25060', '-25062', '-25070', '-25072', '-25080', '-25082', '-25090', '-25092'))
and
(h2.maincondition like 'E10%' or h1.maincondition in
('-25001', '-25003', '-25011', '-25013', '-25021', '-25023', '-25031', '-25033', '-25041', '-25043', '-25051', '-25053', '-25061', '-25063', '-25071', '-25073', '-25081', '-25083', '-25091', '-25093'))
and h1.CHI = h2.CHI
```
Binary file added evaluation/RE1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evaluation/RE2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added evaluation/RE4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
149 changes: 149 additions & 0 deletions evaluation/readme.MD

Large diffs are not rendered by default.

Binary file added evaluation/result_table.PNG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.7</version>
<version>2.9.10</version>
</dependency>

<dependency>
Expand Down Expand Up @@ -89,4 +89,4 @@
<organization>
<name>HDRUK Scotland</name>
</organization>
</project>
</project>

0 comments on commit c6b4358

Please sign in to comment.