a b/mimicsql/evaluation/build_lookup.ipynb
1
{
2
 "cells": [
3
  {
4
   "cell_type": "code",
5
   "execution_count": 1,
6
   "metadata": {},
7
   "outputs": [],
8
   "source": [
9
    "import re\n",
10
    "import csv\n",
11
    "import pandas\n",
12
    "import sqlite3\n",
13
    "import random\n",
14
    "import json\n",
15
    "import itertools\n",
16
    "\n",
17
    "from utils import *"
18
   ]
19
  },
20
  {
21
   "cell_type": "code",
22
   "execution_count": 2,
23
   "metadata": {},
24
   "outputs": [],
25
   "source": [
26
    "db_file = 'mimic_db/mimic.db'\n",
27
    "model = query(db_file)\n",
28
    "(db_meta, db_tabs, db_head) = model._load_db(db_file)"
29
   ]
30
  },
31
  {
32
   "cell_type": "code",
33
   "execution_count": 3,
34
   "metadata": {},
35
   "outputs": [],
36
   "source": [
37
    "for tb in db_meta:\n",
38
    "    for hd in db_meta[tb]:\n",
39
    "        mysql = 'select distinct {} from {}'.format(hd, tb)\n",
40
    "        myres = model.execute_sql(mysql).fetchall()\n",
41
    "        myres = list({k[0]: {} for k in myres if not k[0] == None})\n",
42
    "        db_meta[tb][hd] = myres"
43
   ]
44
  },
45
  {
46
   "cell_type": "code",
47
   "execution_count": 4,
48
   "metadata": {},
49
   "outputs": [],
50
   "source": [
51
    "# print(db_meta)"
52
   ]
53
  },
54
  {
55
   "cell_type": "code",
56
   "execution_count": 5,
57
   "metadata": {},
58
   "outputs": [],
59
   "source": [
60
    "fout = open(\"mimic_db/lookup.json\", \"w\")\n",
61
    "json.dump(db_meta, fout)\n",
62
    "fout.close()"
63
   ]
64
  }
65
 ],
66
 "metadata": {
67
  "kernelspec": {
68
   "display_name": "Python 3",
69
   "language": "python",
70
   "name": "python3"
71
  },
72
  "language_info": {
73
   "codemirror_mode": {
74
    "name": "ipython",
75
    "version": 3
76
   },
77
   "file_extension": ".py",
78
   "mimetype": "text/x-python",
79
   "name": "python",
80
   "nbconvert_exporter": "python",
81
   "pygments_lexer": "ipython3",
82
   "version": "3.6.7"
83
  }
84
 },
85
 "nbformat": 4,
86
 "nbformat_minor": 2
87
}