|
a |
|
b/analysis/result_analysis.ipynb |
|
|
1 |
{ |
|
|
2 |
"cells": [ |
|
|
3 |
{ |
|
|
4 |
"cell_type": "markdown", |
|
|
5 |
"metadata": {}, |
|
|
6 |
"source": [ |
|
|
7 |
"# Result Analysis" |
|
|
8 |
] |
|
|
9 |
}, |
|
|
10 |
{ |
|
|
11 |
"cell_type": "markdown", |
|
|
12 |
"metadata": {}, |
|
|
13 |
"source": [ |
|
|
14 |
"## Imports & Inits" |
|
|
15 |
] |
|
|
16 |
}, |
|
|
17 |
{ |
|
|
18 |
"cell_type": "code", |
|
|
19 |
"execution_count": 1, |
|
|
20 |
"metadata": { |
|
|
21 |
"ExecuteTime": { |
|
|
22 |
"end_time": "2019-08-26T17:07:36.091015Z", |
|
|
23 |
"start_time": "2019-08-26T17:07:36.077065Z" |
|
|
24 |
} |
|
|
25 |
}, |
|
|
26 |
"outputs": [], |
|
|
27 |
"source": [ |
|
|
28 |
"%load_ext autoreload\n", |
|
|
29 |
"%autoreload 2" |
|
|
30 |
] |
|
|
31 |
}, |
|
|
32 |
{ |
|
|
33 |
"cell_type": "code", |
|
|
34 |
"execution_count": 2, |
|
|
35 |
"metadata": { |
|
|
36 |
"ExecuteTime": { |
|
|
37 |
"end_time": "2019-08-26T17:07:38.241694Z", |
|
|
38 |
"start_time": "2019-08-26T17:07:36.223136Z" |
|
|
39 |
}, |
|
|
40 |
"scrolled": true |
|
|
41 |
}, |
|
|
42 |
"outputs": [ |
|
|
43 |
{ |
|
|
44 |
"data": { |
|
|
45 |
"text/plain": [ |
|
|
46 |
"{'workdir': PosixPath('../data/workdir'),\n", |
|
|
47 |
" 'figdir': PosixPath('../data/results/figures'),\n", |
|
|
48 |
" 'resultdir': PosixPath('../data/results'),\n", |
|
|
49 |
" 'dataset_csv': PosixPath('../data/proc_dataset.csv'),\n", |
|
|
50 |
" 'imminent_adm_cols': ['hadm_id', 'processed_note', 'imminent_adm_label'],\n", |
|
|
51 |
" 'prolonged_stay_cols': ['hadm_id', 'processed_note', 'prolonged_stay_label'],\n", |
|
|
52 |
" 'cols': ['hadm_id',\n", |
|
|
53 |
" 'imminent_adm_label',\n", |
|
|
54 |
" 'prolonged_stay_label',\n", |
|
|
55 |
" 'processed_note',\n", |
|
|
56 |
" 'charttime',\n", |
|
|
57 |
" 'intime',\n", |
|
|
58 |
" 'chartinterval'],\n", |
|
|
59 |
" 'dates': ['charttime', 'intime'],\n", |
|
|
60 |
" 'ia_thresh': {'lr': 0.45, 'rf': 0.27, 'gbm': 0.435, 'mlp': 0.2},\n", |
|
|
61 |
" 'ps_thresh': {'lr': 0.39, 'rf': 0.36, 'gbm': 0.324, 'mlp': 0.27}}" |
|
|
62 |
] |
|
|
63 |
}, |
|
|
64 |
"execution_count": 2, |
|
|
65 |
"metadata": {}, |
|
|
66 |
"output_type": "execute_result" |
|
|
67 |
} |
|
|
68 |
], |
|
|
69 |
"source": [ |
|
|
70 |
"import sys\n", |
|
|
71 |
"sys.path.append('../')\n", |
|
|
72 |
"\n", |
|
|
73 |
"import matplotlib.pyplot as plt\n", |
|
|
74 |
"import seaborn as sns\n", |
|
|
75 |
"sns.set_style(\"darkgrid\")\n", |
|
|
76 |
"%matplotlib inline\n", |
|
|
77 |
"\n", |
|
|
78 |
"import numpy as np\n", |
|
|
79 |
"from scipy import stats\n", |
|
|
80 |
"\n", |
|
|
81 |
"import pandas as pd\n", |
|
|
82 |
"import pickle\n", |
|
|
83 |
"import torch\n", |
|
|
84 |
"from itertools import combinations\n", |
|
|
85 |
"from pathlib import Path\n", |
|
|
86 |
"from tqdm import tqdm_notebook as tqdm\n", |
|
|
87 |
"\n", |
|
|
88 |
"from sklearn.feature_extraction.text import TfidfVectorizer\n", |
|
|
89 |
"from torch.utils.data import DataLoader, TensorDataset, SequentialSampler\n", |
|
|
90 |
"\n", |
|
|
91 |
"from utils.metrics import BinaryAvgMetrics\n", |
|
|
92 |
"from utils.plots import *\n", |
|
|
93 |
"from args import args\n", |
|
|
94 |
"vars(args)" |
|
|
95 |
] |
|
|
96 |
}, |
|
|
97 |
{ |
|
|
98 |
"cell_type": "markdown", |
|
|
99 |
"metadata": { |
|
|
100 |
"heading_collapsed": true |
|
|
101 |
}, |
|
|
102 |
"source": [ |
|
|
103 |
"## Compute Results" |
|
|
104 |
] |
|
|
105 |
}, |
|
|
106 |
{ |
|
|
107 |
"cell_type": "code", |
|
|
108 |
"execution_count": 3, |
|
|
109 |
"metadata": { |
|
|
110 |
"ExecuteTime": { |
|
|
111 |
"end_time": "2019-08-25T16:51:03.231407Z", |
|
|
112 |
"start_time": "2019-08-25T16:50:59.130883Z" |
|
|
113 |
}, |
|
|
114 |
"hidden": true |
|
|
115 |
}, |
|
|
116 |
"outputs": [], |
|
|
117 |
"source": [ |
|
|
118 |
"models = ['lr', 'rf', 'gbm', 'mlp']\n", |
|
|
119 |
"\n", |
|
|
120 |
"ia_bams = {}\n", |
|
|
121 |
"ps_bams = {}\n", |
|
|
122 |
"\n", |
|
|
123 |
"for model in models:\n", |
|
|
124 |
" with open(args.workdir/model/'imminent_adm_preds.pkl', 'rb') as f:\n", |
|
|
125 |
" targs = pickle.load(f)\n", |
|
|
126 |
" preds = pickle.load(f)\n", |
|
|
127 |
" probs = pickle.load(f)\n", |
|
|
128 |
" ia_bams[model] = BinaryAvgMetrics(targs, preds, probs)\n", |
|
|
129 |
" \n", |
|
|
130 |
" with open(args.workdir/model/'prolonged_stay_preds.pkl', 'rb') as f:\n", |
|
|
131 |
" targs = pickle.load(f)\n", |
|
|
132 |
" preds = pickle.load(f)\n", |
|
|
133 |
" probs = pickle.load(f) \n", |
|
|
134 |
" ps_bams[model] = BinaryAvgMetrics(targs, preds, probs) " |
|
|
135 |
] |
|
|
136 |
}, |
|
|
137 |
{ |
|
|
138 |
"cell_type": "markdown", |
|
|
139 |
"metadata": { |
|
|
140 |
"hidden": true |
|
|
141 |
}, |
|
|
142 |
"source": [ |
|
|
143 |
"### Ensemble" |
|
|
144 |
] |
|
|
145 |
}, |
|
|
146 |
{ |
|
|
147 |
"cell_type": "code", |
|
|
148 |
"execution_count": 4, |
|
|
149 |
"metadata": { |
|
|
150 |
"ExecuteTime": { |
|
|
151 |
"end_time": "2019-08-20T14:49:16.087902Z", |
|
|
152 |
"start_time": "2019-08-20T14:49:16.049413Z" |
|
|
153 |
}, |
|
|
154 |
"hidden": true |
|
|
155 |
}, |
|
|
156 |
"outputs": [], |
|
|
157 |
"source": [ |
|
|
158 |
"def get_ensemble(ensembles, thresh, bams): \n", |
|
|
159 |
" outputs = {}\n", |
|
|
160 |
" for ens_model in ensembles:\n", |
|
|
161 |
" key = '-'.join(ens_model)\n", |
|
|
162 |
" targs = bams[ens_model[0]].targs\n", |
|
|
163 |
" avg_thresh = np.array([thresh[model] for model in ens_model]).mean()\n", |
|
|
164 |
" max_thresh = max([thresh[model] for model in ens_model])\n", |
|
|
165 |
" probs = []\n", |
|
|
166 |
" for i in range(len(targs)):\n", |
|
|
167 |
" prob = []\n", |
|
|
168 |
" for model in ens_model:\n", |
|
|
169 |
" prob.append(bams[model].probs[i])\n", |
|
|
170 |
" probs.append(np.stack(prob))\n", |
|
|
171 |
"\n", |
|
|
172 |
" avg_probs = [probs.mean(axis=0) for probs in probs]\n", |
|
|
173 |
" max_probs = [probs.max(axis=0) for probs in probs]\n", |
|
|
174 |
"\n", |
|
|
175 |
" avg_preds = [(probs > avg_thresh).astype(np.int64) for probs in avg_probs]\n", |
|
|
176 |
" max_preds = [(probs > max_thresh).astype(np.int64) for probs in max_probs]\n", |
|
|
177 |
" outputs[f'avg-{key}'] = (targs, avg_preds, avg_probs, avg_thresh)\n", |
|
|
178 |
" outputs[f'max-{key}'] = (targs, max_preds, max_probs, max_thresh)\n", |
|
|
179 |
" \n", |
|
|
180 |
" return outputs" |
|
|
181 |
] |
|
|
182 |
}, |
|
|
183 |
{ |
|
|
184 |
"cell_type": "code", |
|
|
185 |
"execution_count": 5, |
|
|
186 |
"metadata": { |
|
|
187 |
"ExecuteTime": { |
|
|
188 |
"end_time": "2019-08-20T14:49:16.112593Z", |
|
|
189 |
"start_time": "2019-08-20T14:49:16.089010Z" |
|
|
190 |
}, |
|
|
191 |
"hidden": true |
|
|
192 |
}, |
|
|
193 |
"outputs": [], |
|
|
194 |
"source": [ |
|
|
195 |
"ensembles = [\n", |
|
|
196 |
" ['gbm', 'mlp'],\n", |
|
|
197 |
" ['rf', 'mlp'],\n", |
|
|
198 |
" ['rf', 'gbm'],\n", |
|
|
199 |
" ['rf', 'gbm', 'mlp'],\n", |
|
|
200 |
" ['lr', 'mlp'],\n", |
|
|
201 |
" ['lr', 'gbm'],\n", |
|
|
202 |
" ['lr', 'gbm', 'mlp'],\n", |
|
|
203 |
" ['lr', 'rf'],\n", |
|
|
204 |
" ['lr', 'rf', 'mlp'],\n", |
|
|
205 |
" ['lr', 'rf', 'gbm'],\n", |
|
|
206 |
" ['lr', 'rf', 'gbm', 'mlp']\n", |
|
|
207 |
"]" |
|
|
208 |
] |
|
|
209 |
}, |
|
|
210 |
{ |
|
|
211 |
"cell_type": "code", |
|
|
212 |
"execution_count": 6, |
|
|
213 |
"metadata": { |
|
|
214 |
"ExecuteTime": { |
|
|
215 |
"end_time": "2019-08-20T14:49:36.246468Z", |
|
|
216 |
"start_time": "2019-08-20T14:49:16.113566Z" |
|
|
217 |
}, |
|
|
218 |
"hidden": true |
|
|
219 |
}, |
|
|
220 |
"outputs": [], |
|
|
221 |
"source": [ |
|
|
222 |
"ia_ensembles = get_ensemble(ensembles, args.ia_thresh, ia_bams)\n", |
|
|
223 |
"\n", |
|
|
224 |
"for model, vals in ia_ensembles.items():\n", |
|
|
225 |
" args.ia_thresh[model] = np.round(vals[-1], 3)\n", |
|
|
226 |
"\n", |
|
|
227 |
"for model, vals in ia_ensembles.items():\n", |
|
|
228 |
" ia_bams[model] = BinaryAvgMetrics(*vals[:-1]) \n", |
|
|
229 |
"\n", |
|
|
230 |
"ps_ensembles = get_ensemble(ensembles, args.ps_thresh, ps_bams)\n", |
|
|
231 |
"\n", |
|
|
232 |
"for model, vals in ps_ensembles.items():\n", |
|
|
233 |
" args.ps_thresh[model] = np.round(vals[-1], 3)\n", |
|
|
234 |
"\n", |
|
|
235 |
"for model, vals in ps_ensembles.items():\n", |
|
|
236 |
" ps_bams[model] = BinaryAvgMetrics(*vals[:-1]) " |
|
|
237 |
] |
|
|
238 |
}, |
|
|
239 |
{ |
|
|
240 |
"cell_type": "markdown", |
|
|
241 |
"metadata": { |
|
|
242 |
"hidden": true |
|
|
243 |
}, |
|
|
244 |
"source": [ |
|
|
245 |
"### Compute Results DataFrame" |
|
|
246 |
] |
|
|
247 |
}, |
|
|
248 |
{ |
|
|
249 |
"cell_type": "code", |
|
|
250 |
"execution_count": 7, |
|
|
251 |
"metadata": { |
|
|
252 |
"ExecuteTime": { |
|
|
253 |
"end_time": "2019-08-20T14:50:50.920777Z", |
|
|
254 |
"start_time": "2019-08-20T14:49:36.248859Z" |
|
|
255 |
}, |
|
|
256 |
"hidden": true |
|
|
257 |
}, |
|
|
258 |
"outputs": [], |
|
|
259 |
"source": [ |
|
|
260 |
"ia_metrics = {}\n", |
|
|
261 |
"ps_metrics = {}\n", |
|
|
262 |
"\n", |
|
|
263 |
"for key in ia_bams.keys():\n", |
|
|
264 |
" ia_metrics[key] = []\n", |
|
|
265 |
" ps_metrics[key] = []\n", |
|
|
266 |
" for i in range(len(ia_bams[key].get_avg_metrics())):\n", |
|
|
267 |
" ia_metrics[key].append(ia_bams[key].get_avg_metrics().iloc[i]['Value'])\n", |
|
|
268 |
" for i in range(len(ps_bams[key].get_avg_metrics())):\n", |
|
|
269 |
" ps_metrics[key].append(ps_bams[key].get_avg_metrics().iloc[i]['Value']) \n", |
|
|
270 |
"\n", |
|
|
271 |
"ia_metrics = pd.DataFrame(ia_metrics, index=['sensitivity', 'specificity', 'ppv', 'auroc', 'npv', 'f1']).transpose()\n", |
|
|
272 |
"ps_metrics = pd.DataFrame(ps_metrics, index=['sensitivity', 'specificity', 'ppv', 'auroc', 'npv', 'f1']).transpose()" |
|
|
273 |
] |
|
|
274 |
}, |
|
|
275 |
{ |
|
|
276 |
"cell_type": "code", |
|
|
277 |
"execution_count": 8, |
|
|
278 |
"metadata": { |
|
|
279 |
"ExecuteTime": { |
|
|
280 |
"end_time": "2019-08-20T14:50:51.157898Z", |
|
|
281 |
"start_time": "2019-08-20T14:50:50.922603Z" |
|
|
282 |
}, |
|
|
283 |
"hidden": true |
|
|
284 |
}, |
|
|
285 |
"outputs": [], |
|
|
286 |
"source": [ |
|
|
287 |
"ia_best = pd.DataFrame([(ia_metrics[metric].idxmax(), ia_metrics[metric].max()) for metric in ia_metrics], columns=['model', 'value'], index=['sensitivity', 'specificity', 'ppv', 'auroc', 'npv', 'f1'])\n", |
|
|
288 |
"ps_best = pd.DataFrame([(ps_metrics[metric].idxmax(), ps_metrics[metric].max()) for metric in ps_metrics], columns=['model', 'value'], index=['sensitivity', 'specificity', 'ppv', 'auroc', 'npv', 'f1'])" |
|
|
289 |
] |
|
|
290 |
}, |
|
|
291 |
{ |
|
|
292 |
"cell_type": "markdown", |
|
|
293 |
"metadata": { |
|
|
294 |
"hidden": true |
|
|
295 |
}, |
|
|
296 |
"source": [ |
|
|
297 |
"### Student-t Tests" |
|
|
298 |
] |
|
|
299 |
}, |
|
|
300 |
{ |
|
|
301 |
"cell_type": "code", |
|
|
302 |
"execution_count": 9, |
|
|
303 |
"metadata": { |
|
|
304 |
"ExecuteTime": { |
|
|
305 |
"end_time": "2019-08-20T14:50:51.182827Z", |
|
|
306 |
"start_time": "2019-08-20T14:50:51.159690Z" |
|
|
307 |
}, |
|
|
308 |
"hidden": true |
|
|
309 |
}, |
|
|
310 |
"outputs": [], |
|
|
311 |
"source": [ |
|
|
312 |
"models = list(ia_metrics.index)\n", |
|
|
313 |
"metrics = list(ia_metrics.columns)" |
|
|
314 |
] |
|
|
315 |
}, |
|
|
316 |
{ |
|
|
317 |
"cell_type": "code", |
|
|
318 |
"execution_count": 10, |
|
|
319 |
"metadata": { |
|
|
320 |
"ExecuteTime": { |
|
|
321 |
"end_time": "2019-08-20T14:50:51.216584Z", |
|
|
322 |
"start_time": "2019-08-20T14:50:51.183898Z" |
|
|
323 |
}, |
|
|
324 |
"hidden": true |
|
|
325 |
}, |
|
|
326 |
"outputs": [], |
|
|
327 |
"source": [ |
|
|
328 |
"def do_ttest(bams, model1, model2, metric): \n", |
|
|
329 |
" if metric == 'sensitivity':\n", |
|
|
330 |
" x1 = bams[model1].sensitivities()\n", |
|
|
331 |
" x2 = bams[model2].sensitivities()\n", |
|
|
332 |
" elif metric == 'specificity':\n", |
|
|
333 |
" x1 = bams[model1].specificities()\n", |
|
|
334 |
" x2 = bams[model2].specificities()\n", |
|
|
335 |
" elif metric == 'ppv':\n", |
|
|
336 |
" x1 = bams[model1].ppvs()\n", |
|
|
337 |
" x2 = bams[model2].ppvs()\n", |
|
|
338 |
" elif metric == 'auroc':\n", |
|
|
339 |
" x1 = bams[model1].aurocs()\n", |
|
|
340 |
" x2 = bams[model2].aurocs()\n", |
|
|
341 |
" elif metric == 'npv':\n", |
|
|
342 |
" x1 = bams[model1].npvs()\n", |
|
|
343 |
" x2 = bams[model2].npvs()\n", |
|
|
344 |
" elif metric == 'f1': \n", |
|
|
345 |
" x1 = bams[model1].f1s()\n", |
|
|
346 |
" x2 = bams[model2].f1s()\n", |
|
|
347 |
"\n", |
|
|
348 |
" t, p = stats.ttest_ind(x1, x2)\n", |
|
|
349 |
" return np.round(t, 2), max(np.round(p, 2), 0.001)" |
|
|
350 |
] |
|
|
351 |
}, |
|
|
352 |
{ |
|
|
353 |
"cell_type": "code", |
|
|
354 |
"execution_count": 11, |
|
|
355 |
"metadata": { |
|
|
356 |
"ExecuteTime": { |
|
|
357 |
"end_time": "2019-08-20T14:52:56.674241Z", |
|
|
358 |
"start_time": "2019-08-20T14:50:51.224602Z" |
|
|
359 |
}, |
|
|
360 |
"hidden": true |
|
|
361 |
}, |
|
|
362 |
"outputs": [], |
|
|
363 |
"source": [ |
|
|
364 |
"ia_ttests = {}\n", |
|
|
365 |
"\n", |
|
|
366 |
"for m1, m2 in combinations(models, 2): \n", |
|
|
367 |
" ia_ttests[f'{m1}:{m2}'] = {}\n", |
|
|
368 |
" for metric in metrics:\n", |
|
|
369 |
" ia_ttests[f'{m1}:{m2}'][metric] = do_ttest(ia_bams, m1, m2, metric)\n", |
|
|
370 |
"\n", |
|
|
371 |
"ia_ttests = pd.DataFrame(ia_ttests).transpose()" |
|
|
372 |
] |
|
|
373 |
}, |
|
|
374 |
{ |
|
|
375 |
"cell_type": "code", |
|
|
376 |
"execution_count": 12, |
|
|
377 |
"metadata": { |
|
|
378 |
"ExecuteTime": { |
|
|
379 |
"end_time": "2019-08-20T14:55:19.337201Z", |
|
|
380 |
"start_time": "2019-08-20T14:52:56.675801Z" |
|
|
381 |
}, |
|
|
382 |
"hidden": true |
|
|
383 |
}, |
|
|
384 |
"outputs": [], |
|
|
385 |
"source": [ |
|
|
386 |
"ps_ttests = {}\n", |
|
|
387 |
"\n", |
|
|
388 |
"for m1, m2 in combinations(models, 2): \n", |
|
|
389 |
" ps_ttests[f'{m1}:{m2}'] = {}\n", |
|
|
390 |
" for metric in metrics:\n", |
|
|
391 |
" ps_ttests[f'{m1}:{m2}'][metric] = do_ttest(ps_bams, m1, m2, metric)\n", |
|
|
392 |
"\n", |
|
|
393 |
"ps_ttests = pd.DataFrame(ps_ttests).transpose()" |
|
|
394 |
] |
|
|
395 |
}, |
|
|
396 |
{ |
|
|
397 |
"cell_type": "markdown", |
|
|
398 |
"metadata": { |
|
|
399 |
"hidden": true |
|
|
400 |
}, |
|
|
401 |
"source": [ |
|
|
402 |
"### Write everything to disk" |
|
|
403 |
] |
|
|
404 |
}, |
|
|
405 |
{ |
|
|
406 |
"cell_type": "code", |
|
|
407 |
"execution_count": 13, |
|
|
408 |
"metadata": { |
|
|
409 |
"ExecuteTime": { |
|
|
410 |
"end_time": "2019-08-20T14:55:50.307681Z", |
|
|
411 |
"start_time": "2019-08-20T14:55:41.469541Z" |
|
|
412 |
}, |
|
|
413 |
"hidden": true |
|
|
414 |
}, |
|
|
415 |
"outputs": [], |
|
|
416 |
"source": [ |
|
|
417 |
"with open(args.resultdir/'bams.pkl', 'wb') as f:\n", |
|
|
418 |
" pickle.dump(ia_bams, f)\n", |
|
|
419 |
" pickle.dump(ps_bams, f)\n", |
|
|
420 |
"\n", |
|
|
421 |
"ia_metrics.to_csv(args.resultdir/'ia_metrics.csv', float_format='%.1f')\n", |
|
|
422 |
"ps_metrics.to_csv(args.resultdir/'ps_metrics.csv', float_format='%.1f')\n", |
|
|
423 |
"ia_best.to_csv(args.resultdir/'ia_best.csv', float_format='%.3f')\n", |
|
|
424 |
"ps_best.to_csv(args.resultdir/'ps_best.csv', float_format='%.3f')\n", |
|
|
425 |
"\n", |
|
|
426 |
"ia_ttests.to_csv(args.resultdir/'ia_ttests.csv')\n", |
|
|
427 |
"ps_ttests.to_csv(args.resultdir/'ps_ttests.csv')" |
|
|
428 |
] |
|
|
429 |
}, |
|
|
430 |
{ |
|
|
431 |
"cell_type": "markdown", |
|
|
432 |
"metadata": {}, |
|
|
433 |
"source": [ |
|
|
434 |
"## 100 Iteration Results" |
|
|
435 |
] |
|
|
436 |
}, |
|
|
437 |
{ |
|
|
438 |
"cell_type": "code", |
|
|
439 |
"execution_count": 3, |
|
|
440 |
"metadata": { |
|
|
441 |
"ExecuteTime": { |
|
|
442 |
"end_time": "2019-08-26T17:07:39.696892Z", |
|
|
443 |
"start_time": "2019-08-26T17:07:38.558702Z" |
|
|
444 |
} |
|
|
445 |
}, |
|
|
446 |
"outputs": [], |
|
|
447 |
"source": [ |
|
|
448 |
"with open(args.resultdir/'bams.pkl', 'rb') as f:\n", |
|
|
449 |
" ia_bams = pickle.load(f)\n", |
|
|
450 |
" ps_bams = pickle.load(f)\n", |
|
|
451 |
" \n", |
|
|
452 |
"ia_metrics = pd.read_csv(args.resultdir/'ia_metrics.csv', index_col=0)\n", |
|
|
453 |
"ps_metrics = pd.read_csv(args.resultdir/'ps_metrics.csv', index_col=0)\n", |
|
|
454 |
"ia_best = pd.read_csv(args.resultdir/'ia_best.csv', index_col=0)\n", |
|
|
455 |
"ps_best = pd.read_csv(args.resultdir/'ps_best.csv', index_col=0)\n", |
|
|
456 |
"\n", |
|
|
457 |
"ia_ttests = pd.read_csv(args.resultdir/'ia_ttests.csv', index_col=0)\n", |
|
|
458 |
"ps_ttests = pd.read_csv(args.resultdir/'ps_ttests.csv', index_col=0)" |
|
|
459 |
] |
|
|
460 |
}, |
|
|
461 |
{ |
|
|
462 |
"cell_type": "code", |
|
|
463 |
"execution_count": 4, |
|
|
464 |
"metadata": { |
|
|
465 |
"ExecuteTime": { |
|
|
466 |
"end_time": "2019-08-26T17:07:42.887775Z", |
|
|
467 |
"start_time": "2019-08-26T17:07:42.849071Z" |
|
|
468 |
} |
|
|
469 |
}, |
|
|
470 |
"outputs": [ |
|
|
471 |
{ |
|
|
472 |
"data": { |
|
|
473 |
"text/html": [ |
|
|
474 |
"<div>\n", |
|
|
475 |
"<style scoped>\n", |
|
|
476 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
477 |
" vertical-align: middle;\n", |
|
|
478 |
" }\n", |
|
|
479 |
"\n", |
|
|
480 |
" .dataframe tbody tr th {\n", |
|
|
481 |
" vertical-align: top;\n", |
|
|
482 |
" }\n", |
|
|
483 |
"\n", |
|
|
484 |
" .dataframe thead th {\n", |
|
|
485 |
" text-align: right;\n", |
|
|
486 |
" }\n", |
|
|
487 |
"</style>\n", |
|
|
488 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
489 |
" <thead>\n", |
|
|
490 |
" <tr style=\"text-align: right;\">\n", |
|
|
491 |
" <th></th>\n", |
|
|
492 |
" <th>sensitivity</th>\n", |
|
|
493 |
" <th>specificity</th>\n", |
|
|
494 |
" <th>ppv</th>\n", |
|
|
495 |
" <th>auroc</th>\n", |
|
|
496 |
" <th>npv</th>\n", |
|
|
497 |
" <th>f1</th>\n", |
|
|
498 |
" </tr>\n", |
|
|
499 |
" </thead>\n", |
|
|
500 |
" <tbody>\n", |
|
|
501 |
" <tr>\n", |
|
|
502 |
" <th>lr</th>\n", |
|
|
503 |
" <td>82.2</td>\n", |
|
|
504 |
" <td>65.5</td>\n", |
|
|
505 |
" <td>42.9</td>\n", |
|
|
506 |
" <td>81.6</td>\n", |
|
|
507 |
" <td>92.1</td>\n", |
|
|
508 |
" <td>56.4</td>\n", |
|
|
509 |
" </tr>\n", |
|
|
510 |
" <tr>\n", |
|
|
511 |
" <th>rf</th>\n", |
|
|
512 |
" <td>83.2</td>\n", |
|
|
513 |
" <td>65.5</td>\n", |
|
|
514 |
" <td>43.2</td>\n", |
|
|
515 |
" <td>81.6</td>\n", |
|
|
516 |
" <td>92.5</td>\n", |
|
|
517 |
" <td>56.8</td>\n", |
|
|
518 |
" </tr>\n", |
|
|
519 |
" <tr>\n", |
|
|
520 |
" <th>gbm</th>\n", |
|
|
521 |
" <td>84.1</td>\n", |
|
|
522 |
" <td>64.2</td>\n", |
|
|
523 |
" <td>42.6</td>\n", |
|
|
524 |
" <td>81.7</td>\n", |
|
|
525 |
" <td>92.7</td>\n", |
|
|
526 |
" <td>56.6</td>\n", |
|
|
527 |
" </tr>\n", |
|
|
528 |
" <tr>\n", |
|
|
529 |
" <th>mlp</th>\n", |
|
|
530 |
" <td>82.1</td>\n", |
|
|
531 |
" <td>64.1</td>\n", |
|
|
532 |
" <td>42.0</td>\n", |
|
|
533 |
" <td>80.8</td>\n", |
|
|
534 |
" <td>91.9</td>\n", |
|
|
535 |
" <td>55.5</td>\n", |
|
|
536 |
" </tr>\n", |
|
|
537 |
" <tr>\n", |
|
|
538 |
" <th>avg-gbm-mlp</th>\n", |
|
|
539 |
" <td>84.1</td>\n", |
|
|
540 |
" <td>64.6</td>\n", |
|
|
541 |
" <td>42.8</td>\n", |
|
|
542 |
" <td>81.9</td>\n", |
|
|
543 |
" <td>92.7</td>\n", |
|
|
544 |
" <td>56.7</td>\n", |
|
|
545 |
" </tr>\n", |
|
|
546 |
" <tr>\n", |
|
|
547 |
" <th>max-gbm-mlp</th>\n", |
|
|
548 |
" <td>83.4</td>\n", |
|
|
549 |
" <td>65.1</td>\n", |
|
|
550 |
" <td>43.0</td>\n", |
|
|
551 |
" <td>81.8</td>\n", |
|
|
552 |
" <td>92.5</td>\n", |
|
|
553 |
" <td>56.7</td>\n", |
|
|
554 |
" </tr>\n", |
|
|
555 |
" <tr>\n", |
|
|
556 |
" <th>avg-rf-mlp</th>\n", |
|
|
557 |
" <td>84.4</td>\n", |
|
|
558 |
" <td>64.6</td>\n", |
|
|
559 |
" <td>42.9</td>\n", |
|
|
560 |
" <td>82.0</td>\n", |
|
|
561 |
" <td>92.9</td>\n", |
|
|
562 |
" <td>56.9</td>\n", |
|
|
563 |
" </tr>\n", |
|
|
564 |
" <tr>\n", |
|
|
565 |
" <th>max-rf-mlp</th>\n", |
|
|
566 |
" <td>86.1</td>\n", |
|
|
567 |
" <td>62.2</td>\n", |
|
|
568 |
" <td>41.8</td>\n", |
|
|
569 |
" <td>81.8</td>\n", |
|
|
570 |
" <td>93.4</td>\n", |
|
|
571 |
" <td>56.3</td>\n", |
|
|
572 |
" </tr>\n", |
|
|
573 |
" <tr>\n", |
|
|
574 |
" <th>avg-rf-gbm</th>\n", |
|
|
575 |
" <td>83.8</td>\n", |
|
|
576 |
" <td>65.4</td>\n", |
|
|
577 |
" <td>43.3</td>\n", |
|
|
578 |
" <td>82.1</td>\n", |
|
|
579 |
" <td>92.7</td>\n", |
|
|
580 |
" <td>57.1</td>\n", |
|
|
581 |
" </tr>\n", |
|
|
582 |
" <tr>\n", |
|
|
583 |
" <th>max-rf-gbm</th>\n", |
|
|
584 |
" <td>83.4</td>\n", |
|
|
585 |
" <td>65.2</td>\n", |
|
|
586 |
" <td>43.1</td>\n", |
|
|
587 |
" <td>81.8</td>\n", |
|
|
588 |
" <td>92.5</td>\n", |
|
|
589 |
" <td>56.8</td>\n", |
|
|
590 |
" </tr>\n", |
|
|
591 |
" <tr>\n", |
|
|
592 |
" <th>avg-rf-gbm-mlp</th>\n", |
|
|
593 |
" <td>84.4</td>\n", |
|
|
594 |
" <td>64.8</td>\n", |
|
|
595 |
" <td>43.1</td>\n", |
|
|
596 |
" <td>82.2</td>\n", |
|
|
597 |
" <td>92.9</td>\n", |
|
|
598 |
" <td>57.0</td>\n", |
|
|
599 |
" </tr>\n", |
|
|
600 |
" <tr>\n", |
|
|
601 |
" <th>max-rf-gbm-mlp</th>\n", |
|
|
602 |
" <td>83.7</td>\n", |
|
|
603 |
" <td>64.9</td>\n", |
|
|
604 |
" <td>42.9</td>\n", |
|
|
605 |
" <td>81.8</td>\n", |
|
|
606 |
" <td>92.6</td>\n", |
|
|
607 |
" <td>56.7</td>\n", |
|
|
608 |
" </tr>\n", |
|
|
609 |
" <tr>\n", |
|
|
610 |
" <th>avg-lr-mlp</th>\n", |
|
|
611 |
" <td>82.9</td>\n", |
|
|
612 |
" <td>64.7</td>\n", |
|
|
613 |
" <td>42.6</td>\n", |
|
|
614 |
" <td>81.4</td>\n", |
|
|
615 |
" <td>92.3</td>\n", |
|
|
616 |
" <td>56.2</td>\n", |
|
|
617 |
" </tr>\n", |
|
|
618 |
" <tr>\n", |
|
|
619 |
" <th>max-lr-mlp</th>\n", |
|
|
620 |
" <td>82.3</td>\n", |
|
|
621 |
" <td>65.5</td>\n", |
|
|
622 |
" <td>42.9</td>\n", |
|
|
623 |
" <td>81.6</td>\n", |
|
|
624 |
" <td>92.1</td>\n", |
|
|
625 |
" <td>56.4</td>\n", |
|
|
626 |
" </tr>\n", |
|
|
627 |
" <tr>\n", |
|
|
628 |
" <th>avg-lr-gbm</th>\n", |
|
|
629 |
" <td>83.3</td>\n", |
|
|
630 |
" <td>65.5</td>\n", |
|
|
631 |
" <td>43.3</td>\n", |
|
|
632 |
" <td>82.1</td>\n", |
|
|
633 |
" <td>92.5</td>\n", |
|
|
634 |
" <td>56.9</td>\n", |
|
|
635 |
" </tr>\n", |
|
|
636 |
" <tr>\n", |
|
|
637 |
" <th>max-lr-gbm</th>\n", |
|
|
638 |
" <td>86.0</td>\n", |
|
|
639 |
" <td>61.9</td>\n", |
|
|
640 |
" <td>41.6</td>\n", |
|
|
641 |
" <td>81.9</td>\n", |
|
|
642 |
" <td>93.3</td>\n", |
|
|
643 |
" <td>56.1</td>\n", |
|
|
644 |
" </tr>\n", |
|
|
645 |
" <tr>\n", |
|
|
646 |
" <th>avg-lr-gbm-mlp</th>\n", |
|
|
647 |
" <td>83.8</td>\n", |
|
|
648 |
" <td>64.9</td>\n", |
|
|
649 |
" <td>43.0</td>\n", |
|
|
650 |
" <td>82.0</td>\n", |
|
|
651 |
" <td>92.7</td>\n", |
|
|
652 |
" <td>56.8</td>\n", |
|
|
653 |
" </tr>\n", |
|
|
654 |
" <tr>\n", |
|
|
655 |
" <th>max-lr-gbm-mlp</th>\n", |
|
|
656 |
" <td>86.0</td>\n", |
|
|
657 |
" <td>61.9</td>\n", |
|
|
658 |
" <td>41.6</td>\n", |
|
|
659 |
" <td>81.9</td>\n", |
|
|
660 |
" <td>93.3</td>\n", |
|
|
661 |
" <td>56.1</td>\n", |
|
|
662 |
" </tr>\n", |
|
|
663 |
" <tr>\n", |
|
|
664 |
" <th>avg-lr-rf</th>\n", |
|
|
665 |
" <td>83.4</td>\n", |
|
|
666 |
" <td>65.8</td>\n", |
|
|
667 |
" <td>43.5</td>\n", |
|
|
668 |
" <td>82.2</td>\n", |
|
|
669 |
" <td>92.6</td>\n", |
|
|
670 |
" <td>57.1</td>\n", |
|
|
671 |
" </tr>\n", |
|
|
672 |
" <tr>\n", |
|
|
673 |
" <th>max-lr-rf</th>\n", |
|
|
674 |
" <td>82.9</td>\n", |
|
|
675 |
" <td>65.1</td>\n", |
|
|
676 |
" <td>42.8</td>\n", |
|
|
677 |
" <td>81.7</td>\n", |
|
|
678 |
" <td>92.3</td>\n", |
|
|
679 |
" <td>56.4</td>\n", |
|
|
680 |
" </tr>\n", |
|
|
681 |
" <tr>\n", |
|
|
682 |
" <th>avg-lr-rf-mlp</th>\n", |
|
|
683 |
" <td>83.9</td>\n", |
|
|
684 |
" <td>65.0</td>\n", |
|
|
685 |
" <td>43.1</td>\n", |
|
|
686 |
" <td>82.1</td>\n", |
|
|
687 |
" <td>92.7</td>\n", |
|
|
688 |
" <td>56.9</td>\n", |
|
|
689 |
" </tr>\n", |
|
|
690 |
" <tr>\n", |
|
|
691 |
" <th>max-lr-rf-mlp</th>\n", |
|
|
692 |
" <td>82.9</td>\n", |
|
|
693 |
" <td>65.0</td>\n", |
|
|
694 |
" <td>42.8</td>\n", |
|
|
695 |
" <td>81.7</td>\n", |
|
|
696 |
" <td>92.3</td>\n", |
|
|
697 |
" <td>56.4</td>\n", |
|
|
698 |
" </tr>\n", |
|
|
699 |
" <tr>\n", |
|
|
700 |
" <th>avg-lr-rf-gbm</th>\n", |
|
|
701 |
" <td>83.7</td>\n", |
|
|
702 |
" <td>65.6</td>\n", |
|
|
703 |
" <td>43.5</td>\n", |
|
|
704 |
" <td>82.3</td>\n", |
|
|
705 |
" <td>92.7</td>\n", |
|
|
706 |
" <td>57.2</td>\n", |
|
|
707 |
" </tr>\n", |
|
|
708 |
" <tr>\n", |
|
|
709 |
" <th>max-lr-rf-gbm</th>\n", |
|
|
710 |
" <td>86.1</td>\n", |
|
|
711 |
" <td>61.8</td>\n", |
|
|
712 |
" <td>41.6</td>\n", |
|
|
713 |
" <td>81.9</td>\n", |
|
|
714 |
" <td>93.3</td>\n", |
|
|
715 |
" <td>56.1</td>\n", |
|
|
716 |
" </tr>\n", |
|
|
717 |
" <tr>\n", |
|
|
718 |
" <th>avg-lr-rf-gbm-mlp</th>\n", |
|
|
719 |
" <td>84.0</td>\n", |
|
|
720 |
" <td>65.1</td>\n", |
|
|
721 |
" <td>43.2</td>\n", |
|
|
722 |
" <td>82.2</td>\n", |
|
|
723 |
" <td>92.8</td>\n", |
|
|
724 |
" <td>57.0</td>\n", |
|
|
725 |
" </tr>\n", |
|
|
726 |
" <tr>\n", |
|
|
727 |
" <th>max-lr-rf-gbm-mlp</th>\n", |
|
|
728 |
" <td>86.1</td>\n", |
|
|
729 |
" <td>61.8</td>\n", |
|
|
730 |
" <td>41.6</td>\n", |
|
|
731 |
" <td>81.9</td>\n", |
|
|
732 |
" <td>93.3</td>\n", |
|
|
733 |
" <td>56.1</td>\n", |
|
|
734 |
" </tr>\n", |
|
|
735 |
" </tbody>\n", |
|
|
736 |
"</table>\n", |
|
|
737 |
"</div>" |
|
|
738 |
], |
|
|
739 |
"text/plain": [ |
|
|
740 |
" sensitivity specificity ppv auroc npv f1\n", |
|
|
741 |
"lr 82.2 65.5 42.9 81.6 92.1 56.4\n", |
|
|
742 |
"rf 83.2 65.5 43.2 81.6 92.5 56.8\n", |
|
|
743 |
"gbm 84.1 64.2 42.6 81.7 92.7 56.6\n", |
|
|
744 |
"mlp 82.1 64.1 42.0 80.8 91.9 55.5\n", |
|
|
745 |
"avg-gbm-mlp 84.1 64.6 42.8 81.9 92.7 56.7\n", |
|
|
746 |
"max-gbm-mlp 83.4 65.1 43.0 81.8 92.5 56.7\n", |
|
|
747 |
"avg-rf-mlp 84.4 64.6 42.9 82.0 92.9 56.9\n", |
|
|
748 |
"max-rf-mlp 86.1 62.2 41.8 81.8 93.4 56.3\n", |
|
|
749 |
"avg-rf-gbm 83.8 65.4 43.3 82.1 92.7 57.1\n", |
|
|
750 |
"max-rf-gbm 83.4 65.2 43.1 81.8 92.5 56.8\n", |
|
|
751 |
"avg-rf-gbm-mlp 84.4 64.8 43.1 82.2 92.9 57.0\n", |
|
|
752 |
"max-rf-gbm-mlp 83.7 64.9 42.9 81.8 92.6 56.7\n", |
|
|
753 |
"avg-lr-mlp 82.9 64.7 42.6 81.4 92.3 56.2\n", |
|
|
754 |
"max-lr-mlp 82.3 65.5 42.9 81.6 92.1 56.4\n", |
|
|
755 |
"avg-lr-gbm 83.3 65.5 43.3 82.1 92.5 56.9\n", |
|
|
756 |
"max-lr-gbm 86.0 61.9 41.6 81.9 93.3 56.1\n", |
|
|
757 |
"avg-lr-gbm-mlp 83.8 64.9 43.0 82.0 92.7 56.8\n", |
|
|
758 |
"max-lr-gbm-mlp 86.0 61.9 41.6 81.9 93.3 56.1\n", |
|
|
759 |
"avg-lr-rf 83.4 65.8 43.5 82.2 92.6 57.1\n", |
|
|
760 |
"max-lr-rf 82.9 65.1 42.8 81.7 92.3 56.4\n", |
|
|
761 |
"avg-lr-rf-mlp 83.9 65.0 43.1 82.1 92.7 56.9\n", |
|
|
762 |
"max-lr-rf-mlp 82.9 65.0 42.8 81.7 92.3 56.4\n", |
|
|
763 |
"avg-lr-rf-gbm 83.7 65.6 43.5 82.3 92.7 57.2\n", |
|
|
764 |
"max-lr-rf-gbm 86.1 61.8 41.6 81.9 93.3 56.1\n", |
|
|
765 |
"avg-lr-rf-gbm-mlp 84.0 65.1 43.2 82.2 92.8 57.0\n", |
|
|
766 |
"max-lr-rf-gbm-mlp 86.1 61.8 41.6 81.9 93.3 56.1" |
|
|
767 |
] |
|
|
768 |
}, |
|
|
769 |
"execution_count": 4, |
|
|
770 |
"metadata": {}, |
|
|
771 |
"output_type": "execute_result" |
|
|
772 |
} |
|
|
773 |
], |
|
|
774 |
"source": [ |
|
|
775 |
"ia_metrics" |
|
|
776 |
] |
|
|
777 |
}, |
|
|
778 |
{ |
|
|
779 |
"cell_type": "code", |
|
|
780 |
"execution_count": 5, |
|
|
781 |
"metadata": { |
|
|
782 |
"ExecuteTime": { |
|
|
783 |
"end_time": "2019-08-25T16:51:17.474334Z", |
|
|
784 |
"start_time": "2019-08-25T16:51:17.021768Z" |
|
|
785 |
} |
|
|
786 |
}, |
|
|
787 |
"outputs": [ |
|
|
788 |
{ |
|
|
789 |
"data": { |
|
|
790 |
"text/html": [ |
|
|
791 |
"<div>\n", |
|
|
792 |
"<style scoped>\n", |
|
|
793 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
794 |
" vertical-align: middle;\n", |
|
|
795 |
" }\n", |
|
|
796 |
"\n", |
|
|
797 |
" .dataframe tbody tr th {\n", |
|
|
798 |
" vertical-align: top;\n", |
|
|
799 |
" }\n", |
|
|
800 |
"\n", |
|
|
801 |
" .dataframe thead th {\n", |
|
|
802 |
" text-align: right;\n", |
|
|
803 |
" }\n", |
|
|
804 |
"</style>\n", |
|
|
805 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
806 |
" <thead>\n", |
|
|
807 |
" <tr style=\"text-align: right;\">\n", |
|
|
808 |
" <th></th>\n", |
|
|
809 |
" <th>Mean</th>\n", |
|
|
810 |
" <th>Lower</th>\n", |
|
|
811 |
" <th>Upper</th>\n", |
|
|
812 |
" </tr>\n", |
|
|
813 |
" </thead>\n", |
|
|
814 |
" <tbody>\n", |
|
|
815 |
" <tr>\n", |
|
|
816 |
" <th>sensitivity</th>\n", |
|
|
817 |
" <td>82.7</td>\n", |
|
|
818 |
" <td>82.2</td>\n", |
|
|
819 |
" <td>83.2</td>\n", |
|
|
820 |
" </tr>\n", |
|
|
821 |
" <tr>\n", |
|
|
822 |
" <th>specificity</th>\n", |
|
|
823 |
" <td>26.1</td>\n", |
|
|
824 |
" <td>25.7</td>\n", |
|
|
825 |
" <td>26.5</td>\n", |
|
|
826 |
" </tr>\n", |
|
|
827 |
" <tr>\n", |
|
|
828 |
" <th>ppv</th>\n", |
|
|
829 |
" <td>40.5</td>\n", |
|
|
830 |
" <td>39.8</td>\n", |
|
|
831 |
" <td>41.2</td>\n", |
|
|
832 |
" </tr>\n", |
|
|
833 |
" <tr>\n", |
|
|
834 |
" <th>auroc</th>\n", |
|
|
835 |
" <td>56.4</td>\n", |
|
|
836 |
" <td>55.9</td>\n", |
|
|
837 |
" <td>56.8</td>\n", |
|
|
838 |
" </tr>\n", |
|
|
839 |
" <tr>\n", |
|
|
840 |
" <th>npv</th>\n", |
|
|
841 |
" <td>71.3</td>\n", |
|
|
842 |
" <td>70.4</td>\n", |
|
|
843 |
" <td>72.2</td>\n", |
|
|
844 |
" </tr>\n", |
|
|
845 |
" <tr>\n", |
|
|
846 |
" <th>f1</th>\n", |
|
|
847 |
" <td>54.3</td>\n", |
|
|
848 |
" <td>53.7</td>\n", |
|
|
849 |
" <td>54.9</td>\n", |
|
|
850 |
" </tr>\n", |
|
|
851 |
" </tbody>\n", |
|
|
852 |
"</table>\n", |
|
|
853 |
"</div>" |
|
|
854 |
], |
|
|
855 |
"text/plain": [ |
|
|
856 |
" Mean Lower Upper\n", |
|
|
857 |
"sensitivity 82.7 82.2 83.2 \n", |
|
|
858 |
"specificity 26.1 25.7 26.5 \n", |
|
|
859 |
"ppv 40.5 39.8 41.2 \n", |
|
|
860 |
"auroc 56.4 55.9 56.8 \n", |
|
|
861 |
"npv 71.3 70.4 72.2 \n", |
|
|
862 |
"f1 54.3 53.7 54.9 " |
|
|
863 |
] |
|
|
864 |
}, |
|
|
865 |
"execution_count": 5, |
|
|
866 |
"metadata": {}, |
|
|
867 |
"output_type": "execute_result" |
|
|
868 |
} |
|
|
869 |
], |
|
|
870 |
"source": [ |
|
|
871 |
"ps_bams['max-lr-rf-gbm-mlp'].get_avg_metrics(conf=0.95)" |
|
|
872 |
] |
|
|
873 |
}, |
|
|
874 |
{ |
|
|
875 |
"cell_type": "code", |
|
|
876 |
"execution_count": 11, |
|
|
877 |
"metadata": { |
|
|
878 |
"ExecuteTime": { |
|
|
879 |
"end_time": "2019-08-22T15:53:26.274126Z", |
|
|
880 |
"start_time": "2019-08-22T15:53:26.243876Z" |
|
|
881 |
} |
|
|
882 |
}, |
|
|
883 |
"outputs": [], |
|
|
884 |
"source": [ |
|
|
885 |
"def getit():\n", |
|
|
886 |
" for model, bam in ia_bams.items():\n", |
|
|
887 |
" yield model, bam.get_avg_metrics(conf=0.95)" |
|
|
888 |
] |
|
|
889 |
}, |
|
|
890 |
{ |
|
|
891 |
"cell_type": "code", |
|
|
892 |
"execution_count": 12, |
|
|
893 |
"metadata": { |
|
|
894 |
"ExecuteTime": { |
|
|
895 |
"end_time": "2019-08-22T15:53:26.299378Z", |
|
|
896 |
"start_time": "2019-08-22T15:53:26.275486Z" |
|
|
897 |
} |
|
|
898 |
}, |
|
|
899 |
"outputs": [], |
|
|
900 |
"source": [ |
|
|
901 |
"itr = getit()" |
|
|
902 |
] |
|
|
903 |
}, |
|
|
904 |
{ |
|
|
905 |
"cell_type": "code", |
|
|
906 |
"execution_count": 13, |
|
|
907 |
"metadata": { |
|
|
908 |
"ExecuteTime": { |
|
|
909 |
"end_time": "2019-08-22T15:53:27.423662Z", |
|
|
910 |
"start_time": "2019-08-22T15:53:27.202410Z" |
|
|
911 |
} |
|
|
912 |
}, |
|
|
913 |
"outputs": [ |
|
|
914 |
{ |
|
|
915 |
"name": "stdout", |
|
|
916 |
"output_type": "stream", |
|
|
917 |
"text": [ |
|
|
918 |
"lr\n" |
|
|
919 |
] |
|
|
920 |
}, |
|
|
921 |
{ |
|
|
922 |
"data": { |
|
|
923 |
"text/html": [ |
|
|
924 |
"<div>\n", |
|
|
925 |
"<style scoped>\n", |
|
|
926 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
927 |
" vertical-align: middle;\n", |
|
|
928 |
" }\n", |
|
|
929 |
"\n", |
|
|
930 |
" .dataframe tbody tr th {\n", |
|
|
931 |
" vertical-align: top;\n", |
|
|
932 |
" }\n", |
|
|
933 |
"\n", |
|
|
934 |
" .dataframe thead th {\n", |
|
|
935 |
" text-align: right;\n", |
|
|
936 |
" }\n", |
|
|
937 |
"</style>\n", |
|
|
938 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
939 |
" <thead>\n", |
|
|
940 |
" <tr style=\"text-align: right;\">\n", |
|
|
941 |
" <th></th>\n", |
|
|
942 |
" <th>Mean</th>\n", |
|
|
943 |
" <th>Lower</th>\n", |
|
|
944 |
" <th>Upper</th>\n", |
|
|
945 |
" </tr>\n", |
|
|
946 |
" </thead>\n", |
|
|
947 |
" <tbody>\n", |
|
|
948 |
" <tr>\n", |
|
|
949 |
" <th>sensitivity</th>\n", |
|
|
950 |
" <td>82.2</td>\n", |
|
|
951 |
" <td>81.8</td>\n", |
|
|
952 |
" <td>82.7</td>\n", |
|
|
953 |
" </tr>\n", |
|
|
954 |
" <tr>\n", |
|
|
955 |
" <th>specificity</th>\n", |
|
|
956 |
" <td>65.5</td>\n", |
|
|
957 |
" <td>64.8</td>\n", |
|
|
958 |
" <td>66.1</td>\n", |
|
|
959 |
" </tr>\n", |
|
|
960 |
" <tr>\n", |
|
|
961 |
" <th>ppv</th>\n", |
|
|
962 |
" <td>42.9</td>\n", |
|
|
963 |
" <td>42.6</td>\n", |
|
|
964 |
" <td>43.3</td>\n", |
|
|
965 |
" </tr>\n", |
|
|
966 |
" <tr>\n", |
|
|
967 |
" <th>auroc</th>\n", |
|
|
968 |
" <td>81.6</td>\n", |
|
|
969 |
" <td>81.2</td>\n", |
|
|
970 |
" <td>81.9</td>\n", |
|
|
971 |
" </tr>\n", |
|
|
972 |
" <tr>\n", |
|
|
973 |
" <th>npv</th>\n", |
|
|
974 |
" <td>92.1</td>\n", |
|
|
975 |
" <td>91.8</td>\n", |
|
|
976 |
" <td>92.3</td>\n", |
|
|
977 |
" </tr>\n", |
|
|
978 |
" <tr>\n", |
|
|
979 |
" <th>f1</th>\n", |
|
|
980 |
" <td>56.4</td>\n", |
|
|
981 |
" <td>56.1</td>\n", |
|
|
982 |
" <td>56.7</td>\n", |
|
|
983 |
" </tr>\n", |
|
|
984 |
" </tbody>\n", |
|
|
985 |
"</table>\n", |
|
|
986 |
"</div>" |
|
|
987 |
], |
|
|
988 |
"text/plain": [ |
|
|
989 |
" Mean Lower Upper\n", |
|
|
990 |
"sensitivity 82.2 81.8 82.7 \n", |
|
|
991 |
"specificity 65.5 64.8 66.1 \n", |
|
|
992 |
"ppv 42.9 42.6 43.3 \n", |
|
|
993 |
"auroc 81.6 81.2 81.9 \n", |
|
|
994 |
"npv 92.1 91.8 92.3 \n", |
|
|
995 |
"f1 56.4 56.1 56.7 " |
|
|
996 |
] |
|
|
997 |
}, |
|
|
998 |
"execution_count": 13, |
|
|
999 |
"metadata": {}, |
|
|
1000 |
"output_type": "execute_result" |
|
|
1001 |
} |
|
|
1002 |
], |
|
|
1003 |
"source": [ |
|
|
1004 |
"model, met = next(itr)\n", |
|
|
1005 |
"print(model)\n", |
|
|
1006 |
"met" |
|
|
1007 |
] |
|
|
1008 |
}, |
|
|
1009 |
{ |
|
|
1010 |
"cell_type": "markdown", |
|
|
1011 |
"metadata": {}, |
|
|
1012 |
"source": [ |
|
|
1013 |
"## Mean AUC" |
|
|
1014 |
] |
|
|
1015 |
}, |
|
|
1016 |
{ |
|
|
1017 |
"cell_type": "code", |
|
|
1018 |
"execution_count": 7, |
|
|
1019 |
"metadata": { |
|
|
1020 |
"ExecuteTime": { |
|
|
1021 |
"end_time": "2019-08-20T14:56:48.059611Z", |
|
|
1022 |
"start_time": "2019-08-20T14:56:47.853161Z" |
|
|
1023 |
} |
|
|
1024 |
}, |
|
|
1025 |
"outputs": [], |
|
|
1026 |
"source": [ |
|
|
1027 |
"legends = list(ia_bams.keys())" |
|
|
1028 |
] |
|
|
1029 |
}, |
|
|
1030 |
{ |
|
|
1031 |
"cell_type": "code", |
|
|
1032 |
"execution_count": 8, |
|
|
1033 |
"metadata": { |
|
|
1034 |
"ExecuteTime": { |
|
|
1035 |
"end_time": "2019-08-20T14:56:48.086604Z", |
|
|
1036 |
"start_time": "2019-08-20T14:56:48.061130Z" |
|
|
1037 |
} |
|
|
1038 |
}, |
|
|
1039 |
"outputs": [], |
|
|
1040 |
"source": [ |
|
|
1041 |
"def get_mean_tprs(bams, base_fpr):\n", |
|
|
1042 |
" mean_tprs = {} \n", |
|
|
1043 |
" for model, bam in bams.items():\n", |
|
|
1044 |
" tprs = [] \n", |
|
|
1045 |
" for i, (targs, probs) in enumerate(zip(bam.targs, bam.probs)):\n", |
|
|
1046 |
" fpr, tpr, _ = roc_curve(targs, probs)\n", |
|
|
1047 |
" tpr = interp(base_fpr, fpr, tpr)\n", |
|
|
1048 |
" tpr[0] = 0.0\n", |
|
|
1049 |
" tprs.append(tpr)\n", |
|
|
1050 |
"\n", |
|
|
1051 |
" tprs = np.array(tprs)\n", |
|
|
1052 |
" mean_tprs[model] = tprs.mean(axis=0)\n", |
|
|
1053 |
" \n", |
|
|
1054 |
" return mean_tprs" |
|
|
1055 |
] |
|
|
1056 |
}, |
|
|
1057 |
{ |
|
|
1058 |
"cell_type": "code", |
|
|
1059 |
"execution_count": 9, |
|
|
1060 |
"metadata": { |
|
|
1061 |
"ExecuteTime": { |
|
|
1062 |
"end_time": "2019-08-20T14:56:51.751338Z", |
|
|
1063 |
"start_time": "2019-08-20T14:56:48.087878Z" |
|
|
1064 |
} |
|
|
1065 |
}, |
|
|
1066 |
"outputs": [ |
|
|
1067 |
{ |
|
|
1068 |
"data": { |
|
|
1069 |
"text/plain": [ |
|
|
1070 |
"<matplotlib.legend.Legend at 0x7fd2da393650>" |
|
|
1071 |
] |
|
|
1072 |
}, |
|
|
1073 |
"execution_count": 9, |
|
|
1074 |
"metadata": {}, |
|
|
1075 |
"output_type": "execute_result" |
|
|
1076 |
}, |
|
|
1077 |
{ |
|
|
1078 |
"data": { |
|
|
1079 |
"image/png": "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\n", |
|
|
1080 |
"text/plain": [ |
|
|
1081 |
"<Figure size 720x576 with 1 Axes>" |
|
|
1082 |
] |
|
|
1083 |
}, |
|
|
1084 |
"metadata": { |
|
|
1085 |
"needs_background": "light" |
|
|
1086 |
}, |
|
|
1087 |
"output_type": "display_data" |
|
|
1088 |
} |
|
|
1089 |
], |
|
|
1090 |
"source": [ |
|
|
1091 |
"base_fpr = np.linspace(0, 1, 100)\n", |
|
|
1092 |
"mean_tprs = get_mean_tprs(ia_bams, base_fpr)\n", |
|
|
1093 |
"\n", |
|
|
1094 |
"fig, ax = plt.subplots(1, 1, figsize=(10, 8))\n", |
|
|
1095 |
"for i, (model, mean_tpr) in enumerate(mean_tprs.items()):\n", |
|
|
1096 |
" ax.plot(base_fpr, mean_tpr)\n", |
|
|
1097 |
"ax.plot([0, 1], [0, 1], linestyle=':') \n", |
|
|
1098 |
"ax.grid(b=True, which='major', color='#d3d3d3', linewidth=1.0)\n", |
|
|
1099 |
"ax.grid(b=True, which='minor', color='#d3d3d3', linewidth=0.5)\n", |
|
|
1100 |
"ax.set_ylabel('Sensitivity')\n", |
|
|
1101 |
"ax.set_xlabel('1 - Specificity')\n", |
|
|
1102 |
"ax.legend(legends)\n", |
|
|
1103 |
"# fig.savefig(args.figdir/'ia_mean_roc.tif', dpi=300)" |
|
|
1104 |
] |
|
|
1105 |
}, |
|
|
1106 |
{ |
|
|
1107 |
"cell_type": "code", |
|
|
1108 |
"execution_count": 10, |
|
|
1109 |
"metadata": { |
|
|
1110 |
"ExecuteTime": { |
|
|
1111 |
"end_time": "2019-08-20T14:56:56.194336Z", |
|
|
1112 |
"start_time": "2019-08-20T14:56:51.752479Z" |
|
|
1113 |
} |
|
|
1114 |
}, |
|
|
1115 |
"outputs": [ |
|
|
1116 |
{ |
|
|
1117 |
"data": { |
|
|
1118 |
"text/plain": [ |
|
|
1119 |
"<matplotlib.legend.Legend at 0x7fd2da3ceed0>" |
|
|
1120 |
] |
|
|
1121 |
}, |
|
|
1122 |
"execution_count": 10, |
|
|
1123 |
"metadata": {}, |
|
|
1124 |
"output_type": "execute_result" |
|
|
1125 |
}, |
|
|
1126 |
{ |
|
|
1127 |
"data": { |
|
|
1128 |
"image/png": "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\n", |
|
|
1129 |
"text/plain": [ |
|
|
1130 |
"<Figure size 720x576 with 1 Axes>" |
|
|
1131 |
] |
|
|
1132 |
}, |
|
|
1133 |
"metadata": { |
|
|
1134 |
"needs_background": "light" |
|
|
1135 |
}, |
|
|
1136 |
"output_type": "display_data" |
|
|
1137 |
} |
|
|
1138 |
], |
|
|
1139 |
"source": [ |
|
|
1140 |
"base_fpr = np.linspace(0, 1, 100)\n", |
|
|
1141 |
"mean_tprs = get_mean_tprs(ps_bams, base_fpr)\n", |
|
|
1142 |
"\n", |
|
|
1143 |
"fig, ax = plt.subplots(1, 1, figsize=(10, 8))\n", |
|
|
1144 |
"for i, (model, mean_tpr) in enumerate(mean_tprs.items()):\n", |
|
|
1145 |
" ax.plot(base_fpr, mean_tpr)\n", |
|
|
1146 |
"ax.plot([0, 1], [0, 1], linestyle=':') \n", |
|
|
1147 |
"ax.grid(b=True, which='major', color='#d3d3d3', linewidth=1.0)\n", |
|
|
1148 |
"ax.grid(b=True, which='minor', color='#d3d3d3', linewidth=0.5)\n", |
|
|
1149 |
"ax.set_ylabel('Sensitivity')\n", |
|
|
1150 |
"ax.set_xlabel('1 - Specificity')\n", |
|
|
1151 |
"ax.legend(legends)\n", |
|
|
1152 |
"# fig.savefig(args.figdir/'ps_mean_roc.tif', dpi=300)" |
|
|
1153 |
] |
|
|
1154 |
}, |
|
|
1155 |
{ |
|
|
1156 |
"cell_type": "markdown", |
|
|
1157 |
"metadata": {}, |
|
|
1158 |
"source": [ |
|
|
1159 |
"## Probability Plots" |
|
|
1160 |
] |
|
|
1161 |
}, |
|
|
1162 |
{ |
|
|
1163 |
"cell_type": "code", |
|
|
1164 |
"execution_count": null, |
|
|
1165 |
"metadata": { |
|
|
1166 |
"ExecuteTime": { |
|
|
1167 |
"end_time": "2019-08-19T21:26:31.674746Z", |
|
|
1168 |
"start_time": "2019-08-19T21:26:31.651188Z" |
|
|
1169 |
} |
|
|
1170 |
}, |
|
|
1171 |
"outputs": [], |
|
|
1172 |
"source": [ |
|
|
1173 |
"len(ens_prob[1])" |
|
|
1174 |
] |
|
|
1175 |
}, |
|
|
1176 |
{ |
|
|
1177 |
"cell_type": "code", |
|
|
1178 |
"execution_count": null, |
|
|
1179 |
"metadata": { |
|
|
1180 |
"ExecuteTime": { |
|
|
1181 |
"end_time": "2019-07-01T01:54:55.010427Z", |
|
|
1182 |
"start_time": "2019-07-01T01:54:53.292803Z" |
|
|
1183 |
} |
|
|
1184 |
}, |
|
|
1185 |
"outputs": [], |
|
|
1186 |
"source": [ |
|
|
1187 |
"df = pd.read_csv(args.proc_csv, usecols=args.cols, parse_dates=args.dates)\n", |
|
|
1188 |
"df['relative_charttime'] = (df['charttime'] - df['intime'])\n", |
|
|
1189 |
"\n", |
|
|
1190 |
"imminent_df = df.loc[(df['imminent_label'] != -1)][['scispacy_note', 'imminent_label', 'relative_charttime']].reset_index()\n", |
|
|
1191 |
"discharge_df = df[['scispacy_note', 'discharge_label', 'relative_charttime']].reset_index()" |
|
|
1192 |
] |
|
|
1193 |
}, |
|
|
1194 |
{ |
|
|
1195 |
"cell_type": "code", |
|
|
1196 |
"execution_count": null, |
|
|
1197 |
"metadata": { |
|
|
1198 |
"ExecuteTime": { |
|
|
1199 |
"end_time": "2019-07-01T01:54:55.035281Z", |
|
|
1200 |
"start_time": "2019-07-01T01:54:55.012234Z" |
|
|
1201 |
} |
|
|
1202 |
}, |
|
|
1203 |
"outputs": [], |
|
|
1204 |
"source": [ |
|
|
1205 |
"interval_hours=12\n", |
|
|
1206 |
"starting_day = -20\n", |
|
|
1207 |
"ending_day = -1" |
|
|
1208 |
] |
|
|
1209 |
}, |
|
|
1210 |
{ |
|
|
1211 |
"cell_type": "markdown", |
|
|
1212 |
"metadata": {}, |
|
|
1213 |
"source": [ |
|
|
1214 |
"### Imminent ICU Admission" |
|
|
1215 |
] |
|
|
1216 |
}, |
|
|
1217 |
{ |
|
|
1218 |
"cell_type": "code", |
|
|
1219 |
"execution_count": null, |
|
|
1220 |
"metadata": { |
|
|
1221 |
"ExecuteTime": { |
|
|
1222 |
"end_time": "2019-07-01T01:55:15.640755Z", |
|
|
1223 |
"start_time": "2019-07-01T01:54:55.036623Z" |
|
|
1224 |
} |
|
|
1225 |
}, |
|
|
1226 |
"outputs": [], |
|
|
1227 |
"source": [ |
|
|
1228 |
"model = 'lr'\n", |
|
|
1229 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1230 |
" clf = pickle.load(f)\n", |
|
|
1231 |
" vocabulary = pickle.load(f)\n", |
|
|
1232 |
" \n", |
|
|
1233 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1234 |
"imminent_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(imminent_df['scispacy_note']))[:, 1]\n", |
|
|
1235 |
"\n", |
|
|
1236 |
"model = 'rf'\n", |
|
|
1237 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1238 |
" clf = pickle.load(f)\n", |
|
|
1239 |
" vocabulary = pickle.load(f)\n", |
|
|
1240 |
" \n", |
|
|
1241 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1242 |
"imminent_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(imminent_df['scispacy_note']))[:, 1]\n", |
|
|
1243 |
"\n", |
|
|
1244 |
"model = 'gbm'\n", |
|
|
1245 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1246 |
" clf = pickle.load(f)\n", |
|
|
1247 |
" vocabulary = pickle.load(f)\n", |
|
|
1248 |
" \n", |
|
|
1249 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1250 |
"imminent_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(imminent_df['scispacy_note']))[:, 1]" |
|
|
1251 |
] |
|
|
1252 |
}, |
|
|
1253 |
{ |
|
|
1254 |
"cell_type": "code", |
|
|
1255 |
"execution_count": null, |
|
|
1256 |
"metadata": { |
|
|
1257 |
"ExecuteTime": { |
|
|
1258 |
"end_time": "2019-07-01T01:55:50.867495Z", |
|
|
1259 |
"start_time": "2019-07-01T01:55:15.642776Z" |
|
|
1260 |
} |
|
|
1261 |
}, |
|
|
1262 |
"outputs": [], |
|
|
1263 |
"source": [ |
|
|
1264 |
"fig, ax = plt.subplots(3, 1, figsize=(10, 15))\n", |
|
|
1265 |
"plot_prob(ax[0], imminent_df, 'lr', args.imminent_threshold['lr'], starting_day, ending_day, interval_hours)\n", |
|
|
1266 |
"plot_prob(ax[1], imminent_df, 'rf', args.imminent_threshold['rf'], starting_day, ending_day, interval_hours)\n", |
|
|
1267 |
"plot_prob(ax[2], imminent_df, 'gbm', args.imminent_threshold['gbm'], starting_day, ending_day, interval_hours)\n", |
|
|
1268 |
"\n", |
|
|
1269 |
"fig.text(0.5, 0.08, 'Time to ICU (days)', ha='center')\n", |
|
|
1270 |
"fig.text(0.08, 0.5, 'Probability', va='center', rotation='vertical')" |
|
|
1271 |
] |
|
|
1272 |
}, |
|
|
1273 |
{ |
|
|
1274 |
"cell_type": "markdown", |
|
|
1275 |
"metadata": {}, |
|
|
1276 |
"source": [ |
|
|
1277 |
"### ICU Discharge" |
|
|
1278 |
] |
|
|
1279 |
}, |
|
|
1280 |
{ |
|
|
1281 |
"cell_type": "code", |
|
|
1282 |
"execution_count": null, |
|
|
1283 |
"metadata": { |
|
|
1284 |
"ExecuteTime": { |
|
|
1285 |
"end_time": "2019-07-01T01:56:21.738416Z", |
|
|
1286 |
"start_time": "2019-07-01T01:55:50.869056Z" |
|
|
1287 |
} |
|
|
1288 |
}, |
|
|
1289 |
"outputs": [], |
|
|
1290 |
"source": [ |
|
|
1291 |
"model = 'lr'\n", |
|
|
1292 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1293 |
" clf = pickle.load(f)\n", |
|
|
1294 |
" vocabulary = pickle.load(f)\n", |
|
|
1295 |
"\n", |
|
|
1296 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1297 |
"discharge_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(discharge_df['scispacy_note']))[:, 1]\n", |
|
|
1298 |
"\n", |
|
|
1299 |
"model = 'rf'\n", |
|
|
1300 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1301 |
" clf = pickle.load(f)\n", |
|
|
1302 |
" vocabulary = pickle.load(f)\n", |
|
|
1303 |
" \n", |
|
|
1304 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1305 |
"discharge_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(discharge_df['scispacy_note']))[:, 1]\n", |
|
|
1306 |
"\n", |
|
|
1307 |
"model = 'gbm'\n", |
|
|
1308 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1309 |
" clf = pickle.load(f)\n", |
|
|
1310 |
" vocabulary = pickle.load(f)\n", |
|
|
1311 |
" \n", |
|
|
1312 |
"vectorizer = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary)\n", |
|
|
1313 |
"discharge_df[f'{model}_prob'] = clf.predict_proba(vectorizer.fit_transform(discharge_df['scispacy_note']))[:, 1]" |
|
|
1314 |
] |
|
|
1315 |
}, |
|
|
1316 |
{ |
|
|
1317 |
"cell_type": "code", |
|
|
1318 |
"execution_count": null, |
|
|
1319 |
"metadata": { |
|
|
1320 |
"ExecuteTime": { |
|
|
1321 |
"end_time": "2019-07-01T01:57:19.994295Z", |
|
|
1322 |
"start_time": "2019-07-01T01:56:21.740249Z" |
|
|
1323 |
} |
|
|
1324 |
}, |
|
|
1325 |
"outputs": [], |
|
|
1326 |
"source": [ |
|
|
1327 |
"fig, ax = plt.subplots(3, 1, figsize=(10, 15))\n", |
|
|
1328 |
"plot_prob(ax[0], discharge_df, 'lr', args.discharge_threshold['lr'], starting_day, ending_day, interval_hours)\n", |
|
|
1329 |
"plot_prob(ax[1], discharge_df, 'rf', args.discharge_threshold['rf'], starting_day, ending_day, interval_hours)\n", |
|
|
1330 |
"plot_prob(ax[2], discharge_df, 'gbm', args.discharge_threshold['gbm'], starting_day, ending_day, interval_hours)\n", |
|
|
1331 |
"\n", |
|
|
1332 |
"fig.text(0.5, 0.08, 'Time to ICU (days)', ha='center')\n", |
|
|
1333 |
"fig.text(0.08, 0.5, 'Probability', va='center', rotation='vertical')" |
|
|
1334 |
] |
|
|
1335 |
}, |
|
|
1336 |
{ |
|
|
1337 |
"cell_type": "markdown", |
|
|
1338 |
"metadata": {}, |
|
|
1339 |
"source": [ |
|
|
1340 |
"## Word Clouds" |
|
|
1341 |
] |
|
|
1342 |
}, |
|
|
1343 |
{ |
|
|
1344 |
"cell_type": "markdown", |
|
|
1345 |
"metadata": {}, |
|
|
1346 |
"source": [ |
|
|
1347 |
"### Imminent ICU Admission" |
|
|
1348 |
] |
|
|
1349 |
}, |
|
|
1350 |
{ |
|
|
1351 |
"cell_type": "code", |
|
|
1352 |
"execution_count": null, |
|
|
1353 |
"metadata": { |
|
|
1354 |
"ExecuteTime": { |
|
|
1355 |
"end_time": "2019-07-01T01:57:20.879120Z", |
|
|
1356 |
"start_time": "2019-07-01T01:57:19.995624Z" |
|
|
1357 |
} |
|
|
1358 |
}, |
|
|
1359 |
"outputs": [], |
|
|
1360 |
"source": [ |
|
|
1361 |
"scores = {}\n", |
|
|
1362 |
"feature_names = {}\n", |
|
|
1363 |
"\n", |
|
|
1364 |
"model = 'lr'\n", |
|
|
1365 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1366 |
" clf = pickle.load(f)\n", |
|
|
1367 |
" vocabulary = pickle.load(f)\n", |
|
|
1368 |
"\n", |
|
|
1369 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1370 |
"scores[model] = clf.coef_[0]/clf.coef_[0].sum()\n", |
|
|
1371 |
"\n", |
|
|
1372 |
"model = 'rf'\n", |
|
|
1373 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1374 |
" clf = pickle.load(f)\n", |
|
|
1375 |
" vocabulary = pickle.load(f)\n", |
|
|
1376 |
"\n", |
|
|
1377 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1378 |
"scores[model] = clf.feature_importances_/clf.feature_importances_.sum()\n", |
|
|
1379 |
"\n", |
|
|
1380 |
"model = 'gbm'\n", |
|
|
1381 |
"with open(args.workdir/model/'imminent_model.pkl', 'rb') as f:\n", |
|
|
1382 |
" clf = pickle.load(f)\n", |
|
|
1383 |
" vocabulary = pickle.load(f)\n", |
|
|
1384 |
"\n", |
|
|
1385 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1386 |
"scores[model] = clf.feature_importances_/clf.feature_importances_.sum()" |
|
|
1387 |
] |
|
|
1388 |
}, |
|
|
1389 |
{ |
|
|
1390 |
"cell_type": "code", |
|
|
1391 |
"execution_count": null, |
|
|
1392 |
"metadata": { |
|
|
1393 |
"ExecuteTime": { |
|
|
1394 |
"end_time": "2019-07-01T01:57:21.398108Z", |
|
|
1395 |
"start_time": "2019-07-01T01:57:20.880592Z" |
|
|
1396 |
} |
|
|
1397 |
}, |
|
|
1398 |
"outputs": [], |
|
|
1399 |
"source": [ |
|
|
1400 |
"model = 'gbm'\n", |
|
|
1401 |
"fig, ax = plt.subplots(1, 2, figsize=(15, 10))\n", |
|
|
1402 |
"neg, pos = get_wordcloud(feature_names[model], scores[model], n_words=25)\n", |
|
|
1403 |
"ax[0].imshow(neg)\n", |
|
|
1404 |
"ax[0].axis('off')\n", |
|
|
1405 |
"ax[1].imshow(pos)\n", |
|
|
1406 |
"ax[1].axis('off')" |
|
|
1407 |
] |
|
|
1408 |
}, |
|
|
1409 |
{ |
|
|
1410 |
"cell_type": "markdown", |
|
|
1411 |
"metadata": {}, |
|
|
1412 |
"source": [ |
|
|
1413 |
"### ICU Discharge" |
|
|
1414 |
] |
|
|
1415 |
}, |
|
|
1416 |
{ |
|
|
1417 |
"cell_type": "code", |
|
|
1418 |
"execution_count": null, |
|
|
1419 |
"metadata": { |
|
|
1420 |
"ExecuteTime": { |
|
|
1421 |
"end_time": "2019-07-01T01:57:22.248780Z", |
|
|
1422 |
"start_time": "2019-07-01T01:57:21.399413Z" |
|
|
1423 |
} |
|
|
1424 |
}, |
|
|
1425 |
"outputs": [], |
|
|
1426 |
"source": [ |
|
|
1427 |
"scores = {}\n", |
|
|
1428 |
"feature_names = {}\n", |
|
|
1429 |
"\n", |
|
|
1430 |
"model = 'lr'\n", |
|
|
1431 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1432 |
" clf = pickle.load(f)\n", |
|
|
1433 |
" vocabulary = pickle.load(f)\n", |
|
|
1434 |
"\n", |
|
|
1435 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1436 |
"scores[model] = clf.coef_[0]/clf.coef_[0].sum()\n", |
|
|
1437 |
"\n", |
|
|
1438 |
"model = 'rf'\n", |
|
|
1439 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1440 |
" clf = pickle.load(f)\n", |
|
|
1441 |
" vocabulary = pickle.load(f)\n", |
|
|
1442 |
"\n", |
|
|
1443 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1444 |
"scores[model] = clf.feature_importances_/clf.feature_importances_.sum()\n", |
|
|
1445 |
"\n", |
|
|
1446 |
"model = 'gbm'\n", |
|
|
1447 |
"with open(args.workdir/model/'discharge_model.pkl', 'rb') as f:\n", |
|
|
1448 |
" clf = pickle.load(f)\n", |
|
|
1449 |
" vocabulary = pickle.load(f)\n", |
|
|
1450 |
"\n", |
|
|
1451 |
"feature_names[model] = TfidfVectorizer(min_df=3, analyzer=str.split, sublinear_tf=True, ngram_range=(2,2), vocabulary=vocabulary).get_feature_names()\n", |
|
|
1452 |
"scores[model] = clf.feature_importances_/clf.feature_importances_.sum()" |
|
|
1453 |
] |
|
|
1454 |
}, |
|
|
1455 |
{ |
|
|
1456 |
"cell_type": "code", |
|
|
1457 |
"execution_count": null, |
|
|
1458 |
"metadata": { |
|
|
1459 |
"ExecuteTime": { |
|
|
1460 |
"end_time": "2019-07-01T01:57:22.860223Z", |
|
|
1461 |
"start_time": "2019-07-01T01:57:22.250338Z" |
|
|
1462 |
} |
|
|
1463 |
}, |
|
|
1464 |
"outputs": [], |
|
|
1465 |
"source": [ |
|
|
1466 |
"model = 'gbm'\n", |
|
|
1467 |
"fig, ax = plt.subplots(1, 2, figsize=(15, 12))\n", |
|
|
1468 |
"neg, pos = get_wordcloud(feature_names[model], scores[model], n_words=50)\n", |
|
|
1469 |
"ax[0].imshow(neg)\n", |
|
|
1470 |
"ax[0].axis('off')\n", |
|
|
1471 |
"ax[1].imshow(pos)\n", |
|
|
1472 |
"ax[1].axis('off')" |
|
|
1473 |
] |
|
|
1474 |
}, |
|
|
1475 |
{ |
|
|
1476 |
"cell_type": "code", |
|
|
1477 |
"execution_count": null, |
|
|
1478 |
"metadata": { |
|
|
1479 |
"ExecuteTime": { |
|
|
1480 |
"end_time": "2019-07-01T01:57:22.885298Z", |
|
|
1481 |
"start_time": "2019-07-01T01:57:22.861363Z" |
|
|
1482 |
} |
|
|
1483 |
}, |
|
|
1484 |
"outputs": [], |
|
|
1485 |
"source": [ |
|
|
1486 |
"# fig.savefig(args.figdir/f'prob.tif', dpi=300)" |
|
|
1487 |
] |
|
|
1488 |
} |
|
|
1489 |
], |
|
|
1490 |
"metadata": { |
|
|
1491 |
"kernelspec": { |
|
|
1492 |
"display_name": "Python 3", |
|
|
1493 |
"language": "python", |
|
|
1494 |
"name": "python3" |
|
|
1495 |
}, |
|
|
1496 |
"language_info": { |
|
|
1497 |
"codemirror_mode": { |
|
|
1498 |
"name": "ipython", |
|
|
1499 |
"version": 3 |
|
|
1500 |
}, |
|
|
1501 |
"file_extension": ".py", |
|
|
1502 |
"mimetype": "text/x-python", |
|
|
1503 |
"name": "python", |
|
|
1504 |
"nbconvert_exporter": "python", |
|
|
1505 |
"pygments_lexer": "ipython3", |
|
|
1506 |
"version": "3.7.4" |
|
|
1507 |
}, |
|
|
1508 |
"toc": { |
|
|
1509 |
"base_numbering": 1, |
|
|
1510 |
"nav_menu": {}, |
|
|
1511 |
"number_sections": true, |
|
|
1512 |
"sideBar": true, |
|
|
1513 |
"skip_h1_title": true, |
|
|
1514 |
"title_cell": "Table of Contents", |
|
|
1515 |
"title_sidebar": "Contents", |
|
|
1516 |
"toc_cell": false, |
|
|
1517 |
"toc_position": { |
|
|
1518 |
"height": "calc(100% - 180px)", |
|
|
1519 |
"left": "10px", |
|
|
1520 |
"top": "150px", |
|
|
1521 |
"width": "165px" |
|
|
1522 |
}, |
|
|
1523 |
"toc_section_display": true, |
|
|
1524 |
"toc_window_display": false |
|
|
1525 |
} |
|
|
1526 |
}, |
|
|
1527 |
"nbformat": 4, |
|
|
1528 |
"nbformat_minor": 2 |
|
|
1529 |
} |