Spaces:
Sleeping
Sleeping
Upload 6 files
Browse files- .gitattributes +2 -0
- LoincTableCore.csv +3 -0
- PanelsAndForms.csv +3 -0
- README.md +5 -5
- SnomedOMS.csv +0 -0
- app.py +65 -0
- sct2_TextDefinition_Full-en_US1000124_20220901.txt +0 -0
.gitattributes
CHANGED
@@ -32,3 +32,5 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
32 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
33 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
34 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
32 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
33 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
34 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
35 |
+
LoincTableCore.csv filter=lfs diff=lfs merge=lfs -text
|
36 |
+
PanelsAndForms.csv filter=lfs diff=lfs merge=lfs -text
|
LoincTableCore.csv
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:0ebc67fe7ec52a031d2157f2938e01ee4c68a75331fa95b01ad13b2338df009c
|
3 |
+
size 23786041
|
PanelsAndForms.csv
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:a5c70a92806a63c42d8af98200601102c4e27361179a368611e3ff0dfc43beb1
|
3 |
+
size 27840189
|
README.md
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
-
emoji:
|
4 |
-
colorFrom:
|
5 |
-
colorTo:
|
6 |
sdk: gradio
|
7 |
-
sdk_version: 3.
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
---
|
|
|
1 |
---
|
2 |
+
title: ClinicalTerminologyAISearch
|
3 |
+
emoji: 🐠
|
4 |
+
colorFrom: red
|
5 |
+
colorTo: yellow
|
6 |
sdk: gradio
|
7 |
+
sdk_version: 3.9.1
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
---
|
SnomedOMS.csv
ADDED
The diff for this file is too large to render.
See raw diff
|
|
app.py
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import pandas as pd
|
3 |
+
import gradio as gr
|
4 |
+
# SNOMEDCT Download https://www.nlm.nih.gov/healthit/snomedct/us_edition.html
|
5 |
+
# LOINC Download https://loinc.org/downloads/
|
6 |
+
# ECQM for Value Set Measures and Quality Reporting: https://vsac.nlm.nih.gov/download/ecqm?rel=20220505&res=eh_only.unique_vs.20220505.txt
|
7 |
+
# SNOMED Nurse Subset https://www.nlm.nih.gov/healthit/snomedct/index.html?_gl=1*36x5pi*_ga*MTI0ODMyNjkxOS4xNjY1NTY3Mjcz*_ga_P1FPTH9PL4*MTY2Nzk4OTI1My41LjEuMTY2Nzk4OTY5Ni4wLjAuMA..
|
8 |
+
|
9 |
+
def MatchLOINC(name):
|
10 |
+
basedir = os.path.dirname(__file__)
|
11 |
+
pd.set_option("display.max_rows", None)
|
12 |
+
data = pd.read_csv(f'LoincTableCore.csv')
|
13 |
+
swith=data.loc[data['COMPONENT'].str.contains(name, case=False, na=False)]
|
14 |
+
return swith
|
15 |
+
|
16 |
+
def MatchLOINCPanelsandForms(name):
|
17 |
+
basedir = os.path.dirname(__file__)
|
18 |
+
data = pd.read_csv(f'PanelsAndForms.csv')
|
19 |
+
swith=data.loc[data['ParentName'].str.contains(name, case=False, na=False)]
|
20 |
+
return swith
|
21 |
+
|
22 |
+
def MatchSNOMED(name):
|
23 |
+
basedir = os.path.dirname(__file__)
|
24 |
+
data = pd.read_csv(f'sct2_TextDefinition_Full-en_US1000124_20220901.txt',sep='\t')
|
25 |
+
swith=data.loc[data['term'].str.contains(name, case=False, na=False)]
|
26 |
+
#swith = data[data['term'].str.match(name)]
|
27 |
+
return swith
|
28 |
+
|
29 |
+
def MatchOMS(name):
|
30 |
+
basedir = os.path.dirname(__file__)
|
31 |
+
data = pd.read_csv(f'SnomedOMS.csv')
|
32 |
+
swith=data.loc[data['SNOMED CT'].str.contains(name, case=False, na=False)]
|
33 |
+
#swith = data[data['SNOMED CT'].str.match(name)]
|
34 |
+
return swith
|
35 |
+
|
36 |
+
|
37 |
+
|
38 |
+
with gr.Blocks() as demo:
|
39 |
+
name = gr.Textbox(label="Enter a term or word to match and find LOINC, SNOMED and OMS clinical terminologies.")
|
40 |
+
|
41 |
+
output1 = gr.DataFrame(label="LOINC Terminology")
|
42 |
+
output2 = gr.DataFrame(label="LOINC Assessment Panels")
|
43 |
+
output3 = gr.DataFrame(label="SNOMED Terminology")
|
44 |
+
output4 = gr.DataFrame(label="SNOMED and OMS Terminology")
|
45 |
+
|
46 |
+
#output1 = gr.TextArea(label="Output Match LOINC", max_lines=10, interactive=True, )
|
47 |
+
#output2 = gr.TextArea(label="Output Match LOINC Panels and Forms", max_lines=10, interactive=True,)
|
48 |
+
#output3 = gr.TextArea(label="Output Match SNOMED", max_lines=10, interactive=True,)
|
49 |
+
#output4 = gr.TextArea(label="Output Match SNOMED", max_lines=10, interactive=True,)
|
50 |
+
|
51 |
+
button1 = gr.Button("Match LOINC Clinical Terminology")
|
52 |
+
button1.click(fn=MatchLOINC, inputs=name, outputs=output1)
|
53 |
+
|
54 |
+
button2 = gr.Button("Match LOINC Panels and Forms")
|
55 |
+
button2.click(fn=MatchLOINCPanelsandForms, inputs=name, outputs=output2)
|
56 |
+
|
57 |
+
button3 = gr.Button("Match SNOMED Clinical Terminology")
|
58 |
+
button3.click(fn=MatchSNOMED, inputs=name, outputs=output3)
|
59 |
+
|
60 |
+
button3 = gr.Button("Match SNOMED and OMS Clinical Terminology")
|
61 |
+
button3.click(fn=MatchOMS, inputs=name, outputs=output4)
|
62 |
+
|
63 |
+
|
64 |
+
|
65 |
+
demo.launch(debug=True)
|
sct2_TextDefinition_Full-en_US1000124_20220901.txt
ADDED
The diff for this file is too large to render.
See raw diff
|
|