|
a |
|
b/notebooks/Metadata.ipynb |
|
|
1 |
{ |
|
|
2 |
"cells": [ |
|
|
3 |
{ |
|
|
4 |
"cell_type": "code", |
|
|
5 |
"execution_count": 145, |
|
|
6 |
"metadata": {}, |
|
|
7 |
"outputs": [], |
|
|
8 |
"source": [ |
|
|
9 |
"VERSION = 31\n", |
|
|
10 |
"CLOUD_SINGLE = True\n", |
|
|
11 |
"DATA_SMALL = False\n", |
|
|
12 |
"FOCAL_LOSS = False" |
|
|
13 |
] |
|
|
14 |
}, |
|
|
15 |
{ |
|
|
16 |
"cell_type": "code", |
|
|
17 |
"execution_count": 146, |
|
|
18 |
"metadata": {}, |
|
|
19 |
"outputs": [], |
|
|
20 |
"source": [ |
|
|
21 |
"%run ./Code.ipynb" |
|
|
22 |
] |
|
|
23 |
}, |
|
|
24 |
{ |
|
|
25 |
"cell_type": "markdown", |
|
|
26 |
"metadata": {}, |
|
|
27 |
"source": [ |
|
|
28 |
"# Utility" |
|
|
29 |
] |
|
|
30 |
}, |
|
|
31 |
{ |
|
|
32 |
"cell_type": "code", |
|
|
33 |
"execution_count": 6, |
|
|
34 |
"metadata": {}, |
|
|
35 |
"outputs": [], |
|
|
36 |
"source": [ |
|
|
37 |
"def myLabelEncoder(data, col, vals, remaining_cat = True):\n", |
|
|
38 |
" name = col+'_le'\n", |
|
|
39 |
" enc_df = pd.DataFrame(np.arange(len(vals)), index=vals, columns = [name])\n", |
|
|
40 |
" data = data.join(enc_df, on=col)\n", |
|
|
41 |
"\n", |
|
|
42 |
" if remaining_cat:\n", |
|
|
43 |
" data[name] = data[name].fillna(len(vals))\n", |
|
|
44 |
" else:\n", |
|
|
45 |
" assert data[name].isnull().sum() == 0\n", |
|
|
46 |
" \n", |
|
|
47 |
" data[name] = data[name].astype(int).astype('category')\n", |
|
|
48 |
" assert len(data[name].unique()) == (len(vals) + remaining_cat)\n", |
|
|
49 |
" \n", |
|
|
50 |
" return data" |
|
|
51 |
] |
|
|
52 |
}, |
|
|
53 |
{ |
|
|
54 |
"cell_type": "code", |
|
|
55 |
"execution_count": 7, |
|
|
56 |
"metadata": {}, |
|
|
57 |
"outputs": [], |
|
|
58 |
"source": [ |
|
|
59 |
"def myRoundEncoder(data, col, rounding, postfix):\n", |
|
|
60 |
" name = col+postfix\n", |
|
|
61 |
" data[name] = (((data[col]+0.0000001) % rounding) < 0.00001)\n", |
|
|
62 |
" data[name] = data[name].astype(bool)\n", |
|
|
63 |
" return data" |
|
|
64 |
] |
|
|
65 |
}, |
|
|
66 |
{ |
|
|
67 |
"cell_type": "markdown", |
|
|
68 |
"metadata": {}, |
|
|
69 |
"source": [ |
|
|
70 |
"# Prepare metadata" |
|
|
71 |
] |
|
|
72 |
}, |
|
|
73 |
{ |
|
|
74 |
"cell_type": "code", |
|
|
75 |
"execution_count": 8, |
|
|
76 |
"metadata": {}, |
|
|
77 |
"outputs": [], |
|
|
78 |
"source": [ |
|
|
79 |
"cols_info = ['PatientID','SOPInstanceUID','SeriesInstanceUID','StudyInstanceUID','pos_idx','Rows','Columns',\n", |
|
|
80 |
" 'PxlMin_zero','any_series','test','test2']\n", |
|
|
81 |
"cols_redundant = ['BitsAllocated','HighBit','WindowCenter_1_NAN','ImageOrientationPatient_0','ImageOrientationPatient_1',\n", |
|
|
82 |
" 'ImageOrientationPatient_2','ImageOrientationPatient_3','PixelSpacing_0','Modality',\n", |
|
|
83 |
" 'PhotometricInterpretation','SamplesPerPixel','StudyID',\n", |
|
|
84 |
" 'ImageOrientationPatient_5_enc_1', # same as ImageOrientationPatient_4_enc_1\n", |
|
|
85 |
" 'PixelSpacing_1_enc_1', # same as ImagePositionPatient_0_enc_1\n", |
|
|
86 |
" ]\n", |
|
|
87 |
"cols_consumed = ['BitsStored','PixelRepresentation','RescaleIntercept','ImageOrientationPatient',\n", |
|
|
88 |
" 'ImageOrientationPatient_4','ImageOrientationPatient_5','ImagePositionPatient',\n", |
|
|
89 |
" 'ImagePositionPatient_0','ImagePositionPatient_1','ImagePositionPatient_2','PixelSpacing',\n", |
|
|
90 |
" 'RescaleSlope','WindowCenter','PixelSpacing_1','WindowCenter_0','WindowCenter_1',\n", |
|
|
91 |
" 'WindowWidth','WindowWidth_0','WindowWidth_1']\n", |
|
|
92 |
"cols_float = ['ImageOrientationPatient_4_f','ImageOrientationPatient_5_f','ImagePositionPatient_0_f',\n", |
|
|
93 |
" 'ImagePositionPatient_1_f','ImagePositionPatient_2_f','PixelSpacing_1_f',\n", |
|
|
94 |
" 'pos_max','pos_min','pos_size','pos_idx1','pos_idx2','pos_inc1','pos_inc2',\n", |
|
|
95 |
" 'pos_range','pos_rel','pos_zeros','pos_inc_rng','PxlMin','PxlMax','PxlStd','PxlMean','SeriesPP']\n", |
|
|
96 |
"cols_bool = ['ImageOrientationPatient_4_enc_0','ImageOrientationPatient_4_enc_1',\n", |
|
|
97 |
" 'ImageOrientationPatient_5_enc_0',\n", |
|
|
98 |
" 'ImagePositionPatient_0_enc_0','ImagePositionPatient_0_enc_1',\n", |
|
|
99 |
" 'ImagePositionPatient_0_f_r1','ImagePositionPatient_0_f_r05','ImagePositionPatient_1_enc_0',\n", |
|
|
100 |
" 'ImagePositionPatient_2_f_r05','PixelSpacing_1_enc_0',\n", |
|
|
101 |
" 'pos_inc1_r1','pos_inc1_r0001','pos_inc1_enc_0','pos_inc2_enc_0','pos_inc1_enc_1','pos_inc2_enc_1']\n", |
|
|
102 |
"cols_le = ['WindowCenter_1_le','BitType_le','WindowCenter_0_le','pos_inc1_grp_le','pos_inc2_grp_le','pos_size_le',\n", |
|
|
103 |
" 'pos_zeros_le','WindowWidth_0_le','WindowWidth_1_le','PxlMin_grp_le']\n", |
|
|
104 |
"\n", |
|
|
105 |
"cols_all = cols_redundant + cols_float + cols_bool + cols_le + cols_consumed + cols_info" |
|
|
106 |
] |
|
|
107 |
}, |
|
|
108 |
{ |
|
|
109 |
"cell_type": "code", |
|
|
110 |
"execution_count": 9, |
|
|
111 |
"metadata": {}, |
|
|
112 |
"outputs": [], |
|
|
113 |
"source": [ |
|
|
114 |
"pickle.dump((cols_le,cols_float,cols_bool), open(PATH_WORK/'covs','wb'))" |
|
|
115 |
] |
|
|
116 |
}, |
|
|
117 |
{ |
|
|
118 |
"cell_type": "code", |
|
|
119 |
"execution_count": 10, |
|
|
120 |
"metadata": {}, |
|
|
121 |
"outputs": [], |
|
|
122 |
"source": [ |
|
|
123 |
"train_csv = pd.read_csv(PATH/'stage_2_train.csv')\n", |
|
|
124 |
"\n", |
|
|
125 |
"train_csv = train_csv.loc[~train_csv.ID.duplicated()].sort_values('ID').reset_index(drop=True)\n", |
|
|
126 |
"all_sop_ids = train_csv.ID.str.split('_').apply(lambda x: x[0]+'_'+x[1]).unique()\n", |
|
|
127 |
"train_df = pd.DataFrame(train_csv.Label.values.reshape((-1,6)), columns = all_ich)\n", |
|
|
128 |
"train_df['sop_id'] = all_sop_ids\n", |
|
|
129 |
"\n", |
|
|
130 |
"train_df.to_csv(PATH_WORK/'train_df.csv', index=False)" |
|
|
131 |
] |
|
|
132 |
}, |
|
|
133 |
{ |
|
|
134 |
"cell_type": "code", |
|
|
135 |
"execution_count": 11, |
|
|
136 |
"metadata": {}, |
|
|
137 |
"outputs": [], |
|
|
138 |
"source": [ |
|
|
139 |
"train_md = pd.read_csv(PATH/'train_metadata.csv')\n", |
|
|
140 |
"train_md['test'] = False\n", |
|
|
141 |
"test_md = pd.read_csv(PATH/'test_metadata.csv')\n", |
|
|
142 |
"test_md['test'] = True\n", |
|
|
143 |
"data_md = pd.concat([train_md, test_md], axis=0, sort=False).reset_index(drop=True)" |
|
|
144 |
] |
|
|
145 |
}, |
|
|
146 |
{ |
|
|
147 |
"cell_type": "code", |
|
|
148 |
"execution_count": 12, |
|
|
149 |
"metadata": {}, |
|
|
150 |
"outputs": [], |
|
|
151 |
"source": [ |
|
|
152 |
"data_md['test2'] = False\n", |
|
|
153 |
"test2_md = pd.read_csv(PATH/'test2_metadata.csv')\n", |
|
|
154 |
"test2_md['test'] = False\n", |
|
|
155 |
"test2_md['test2'] = True\n", |
|
|
156 |
"data_md = pd.concat([data_md, test2_md], axis=0, sort=False).reset_index(drop=True)" |
|
|
157 |
] |
|
|
158 |
}, |
|
|
159 |
{ |
|
|
160 |
"cell_type": "code", |
|
|
161 |
"execution_count": 13, |
|
|
162 |
"metadata": {}, |
|
|
163 |
"outputs": [], |
|
|
164 |
"source": [ |
|
|
165 |
"data_md.columns = data_md.columns.str.replace('_',' ').str.title().str.replace(' ','').str.replace('Sop','SOP')\\\n", |
|
|
166 |
" .str.replace('Uid','UID').str.replace('Id','ID')" |
|
|
167 |
] |
|
|
168 |
}, |
|
|
169 |
{ |
|
|
170 |
"cell_type": "code", |
|
|
171 |
"execution_count": 14, |
|
|
172 |
"metadata": {}, |
|
|
173 |
"outputs": [], |
|
|
174 |
"source": [ |
|
|
175 |
"cc = data_md.columns.values\n", |
|
|
176 |
"cc[cc == 'Test'] = 'test'\n", |
|
|
177 |
"cc[cc == 'Test2'] = 'test2'\n", |
|
|
178 |
"data_md.columns = cc" |
|
|
179 |
] |
|
|
180 |
}, |
|
|
181 |
{ |
|
|
182 |
"cell_type": "code", |
|
|
183 |
"execution_count": 15, |
|
|
184 |
"metadata": {}, |
|
|
185 |
"outputs": [], |
|
|
186 |
"source": [ |
|
|
187 |
"for i in range(6):\n", |
|
|
188 |
" data_md['ImageOrientationPatient_{}'.format(i)] \\\n", |
|
|
189 |
" = data_md['ImageOrientationPatient'].str.split('\\'').apply(lambda x: x[1+2*i])\n", |
|
|
190 |
"\n", |
|
|
191 |
"for i in range(3):\n", |
|
|
192 |
" data_md['ImagePositionPatient_{}'.format(i)] \\\n", |
|
|
193 |
" = data_md['ImagePositionPatient'].str.split('\\'').apply(lambda x: x[1+2*i])\n", |
|
|
194 |
"\n", |
|
|
195 |
"for i in range(2):\n", |
|
|
196 |
" data_md['PixelSpacing_{}'.format(i)] \\\n", |
|
|
197 |
" = data_md['PixelSpacing'].str.split('\\'').apply(lambda x: x[1+2*i])\n", |
|
|
198 |
"\n", |
|
|
199 |
"data_md['WindowCenter_0'] \\\n", |
|
|
200 |
" = data_md['WindowCenter'].str.split('\\'').apply(lambda x: float(x[1]) if len(x) > 1 else float(x[0]))\n", |
|
|
201 |
"\n", |
|
|
202 |
"data_md['WindowCenter_1'] \\\n", |
|
|
203 |
" = data_md['WindowCenter'].str.split('\\'').apply(lambda x: float(x[3]) if len(x) > 1 else np.nan)\n", |
|
|
204 |
"\n", |
|
|
205 |
"data_md['WindowCenter_1_NAN'] = data_md.WindowCenter_1.isnull()" |
|
|
206 |
] |
|
|
207 |
}, |
|
|
208 |
{ |
|
|
209 |
"cell_type": "code", |
|
|
210 |
"execution_count": 16, |
|
|
211 |
"metadata": {}, |
|
|
212 |
"outputs": [], |
|
|
213 |
"source": [ |
|
|
214 |
"data_md['ImagePositionPatient_2'] = data_md['ImagePositionPatient_2'].astype(float)\n", |
|
|
215 |
"data_md = data_md.sort_values(['SeriesInstanceUID','ImagePositionPatient_2']).reset_index(drop=True)" |
|
|
216 |
] |
|
|
217 |
}, |
|
|
218 |
{ |
|
|
219 |
"cell_type": "code", |
|
|
220 |
"execution_count": 17, |
|
|
221 |
"metadata": {}, |
|
|
222 |
"outputs": [], |
|
|
223 |
"source": [ |
|
|
224 |
"data_md['WindowWidth_0'] \\\n", |
|
|
225 |
" = data_md['WindowWidth'].str.split('\\'').apply(lambda x: float(x[1]) if len(x) > 1 else float(x[0]))\n", |
|
|
226 |
"\n", |
|
|
227 |
"data_md['WindowWidth_1'] \\\n", |
|
|
228 |
" = data_md['WindowWidth'].str.split('\\'').apply(lambda x: float(x[3]) if len(x) > 1 else np.nan)\n", |
|
|
229 |
"\n", |
|
|
230 |
"data_md = myLabelEncoder(data_md, 'WindowWidth_0', [80.0,150.0,100.0,135.0,120.0])\n", |
|
|
231 |
"\n", |
|
|
232 |
"data_md = myLabelEncoder(data_md, 'WindowWidth_1', [80.0,np.nan])" |
|
|
233 |
] |
|
|
234 |
}, |
|
|
235 |
{ |
|
|
236 |
"cell_type": "code", |
|
|
237 |
"execution_count": 18, |
|
|
238 |
"metadata": {}, |
|
|
239 |
"outputs": [], |
|
|
240 |
"source": [ |
|
|
241 |
"data_md = myLabelEncoder(data_md, 'WindowCenter_1', [36.0,40.0,47.0,np.nan])" |
|
|
242 |
] |
|
|
243 |
}, |
|
|
244 |
{ |
|
|
245 |
"cell_type": "code", |
|
|
246 |
"execution_count": 19, |
|
|
247 |
"metadata": {}, |
|
|
248 |
"outputs": [], |
|
|
249 |
"source": [ |
|
|
250 |
"data_md['BitType'] = data_md.BitsStored.astype(str) + data_md.PixelRepresentation.astype(str) \\\n", |
|
|
251 |
" + data_md.RescaleIntercept.astype(str)\n", |
|
|
252 |
"\n", |
|
|
253 |
"data_md = myLabelEncoder(data_md, 'BitType', ['161-1024.0','120-1024.0','1210.0','1610.0'])\n", |
|
|
254 |
"\n", |
|
|
255 |
"del data_md['BitType']" |
|
|
256 |
] |
|
|
257 |
}, |
|
|
258 |
{ |
|
|
259 |
"cell_type": "code", |
|
|
260 |
"execution_count": 20, |
|
|
261 |
"metadata": {}, |
|
|
262 |
"outputs": [], |
|
|
263 |
"source": [ |
|
|
264 |
"data_md['ImageOrientationPatient_4_f'] = data_md.ImageOrientationPatient_4.astype(float)\n", |
|
|
265 |
"\n", |
|
|
266 |
"data_md['ImageOrientationPatient_4_enc_0'] = (data_md.ImageOrientationPatient_4_f == 1)\n", |
|
|
267 |
"data_md['ImageOrientationPatient_4_enc_1'] = data_md.ImageOrientationPatient_4_f.between(0.927184,0.927185)\n", |
|
|
268 |
"\n", |
|
|
269 |
"data_md['ImageOrientationPatient_4_f'] = np.clip(data_md['ImageOrientationPatient_4_f'].values,0.85,1)\n", |
|
|
270 |
"\n", |
|
|
271 |
"data_md.loc[data_md.ImageOrientationPatient_4_enc_0 | data_md.ImageOrientationPatient_4_enc_1, \\\n", |
|
|
272 |
" 'ImageOrientationPatient_4_f'] = 0.7" |
|
|
273 |
] |
|
|
274 |
}, |
|
|
275 |
{ |
|
|
276 |
"cell_type": "code", |
|
|
277 |
"execution_count": 21, |
|
|
278 |
"metadata": {}, |
|
|
279 |
"outputs": [], |
|
|
280 |
"source": [ |
|
|
281 |
"data_md['ImageOrientationPatient_5_f'] = data_md.ImageOrientationPatient_5.astype(float)\n", |
|
|
282 |
"\n", |
|
|
283 |
"data_md['ImageOrientationPatient_5_enc_0'] = (data_md.ImageOrientationPatient_5_f == 0)\n", |
|
|
284 |
"data_md['ImageOrientationPatient_5_enc_1'] = data_md.ImageOrientationPatient_5_f.between(-0.374608,-0.374607)\n", |
|
|
285 |
"\n", |
|
|
286 |
"data_md.loc[data_md.ImageOrientationPatient_5_enc_0 | data_md.ImageOrientationPatient_5_enc_1, \\\n", |
|
|
287 |
" 'ImageOrientationPatient_5_f'] = -0.6\n", |
|
|
288 |
"\n", |
|
|
289 |
"data_md['ImageOrientationPatient_5_f'] = np.clip(data_md['ImageOrientationPatient_5_f'].values,-0.7,0)" |
|
|
290 |
] |
|
|
291 |
}, |
|
|
292 |
{ |
|
|
293 |
"cell_type": "code", |
|
|
294 |
"execution_count": 22, |
|
|
295 |
"metadata": {}, |
|
|
296 |
"outputs": [], |
|
|
297 |
"source": [ |
|
|
298 |
"data_md['ImagePositionPatient_0_f'] = data_md.ImagePositionPatient_0.astype(float)\n", |
|
|
299 |
"\n", |
|
|
300 |
"data_md['ImagePositionPatient_0_enc_0'] = (data_md.ImagePositionPatient_0_f == -125)\n", |
|
|
301 |
"data_md['ImagePositionPatient_0_enc_1'] = (data_md.ImagePositionPatient_0_f.between(-126.437379,-126.437377) |\n", |
|
|
302 |
" data_md.ImagePositionPatient_0_f.between(-126.408876,-126.408874))\n", |
|
|
303 |
"\n", |
|
|
304 |
"data_md['ImagePositionPatient_0_f'] = np.clip(data_md['ImagePositionPatient_0_f'].values,-175,-50)\n", |
|
|
305 |
"\n", |
|
|
306 |
"data_md.loc[data_md.ImagePositionPatient_0_enc_0 | data_md.ImagePositionPatient_0_enc_1, \\\n", |
|
|
307 |
" 'ImagePositionPatient_0_f'] = -200" |
|
|
308 |
] |
|
|
309 |
}, |
|
|
310 |
{ |
|
|
311 |
"cell_type": "code", |
|
|
312 |
"execution_count": 23, |
|
|
313 |
"metadata": {}, |
|
|
314 |
"outputs": [], |
|
|
315 |
"source": [ |
|
|
316 |
"data_md = myRoundEncoder(data_md, 'ImagePositionPatient_0_f', 1, '_r1')\n", |
|
|
317 |
"data_md = myRoundEncoder(data_md, 'ImagePositionPatient_0_f', 0.5, '_r05')" |
|
|
318 |
] |
|
|
319 |
}, |
|
|
320 |
{ |
|
|
321 |
"cell_type": "code", |
|
|
322 |
"execution_count": 24, |
|
|
323 |
"metadata": {}, |
|
|
324 |
"outputs": [], |
|
|
325 |
"source": [ |
|
|
326 |
"data_md['ImagePositionPatient_1_f'] = data_md.ImagePositionPatient_1.astype(float)\n", |
|
|
327 |
"data_md['ImagePositionPatient_1_f'] = np.clip(data_md['ImagePositionPatient_1_f'].values,-200,100)\n", |
|
|
328 |
"data_md['ImagePositionPatient_1_enc_0'] = (data_md['ImagePositionPatient_1_f'] > -75)" |
|
|
329 |
] |
|
|
330 |
}, |
|
|
331 |
{ |
|
|
332 |
"cell_type": "code", |
|
|
333 |
"execution_count": 25, |
|
|
334 |
"metadata": {}, |
|
|
335 |
"outputs": [], |
|
|
336 |
"source": [ |
|
|
337 |
"data_md['ImagePositionPatient_2_f'] = data_md.ImagePositionPatient_2.astype(float)\n", |
|
|
338 |
"data_md = myRoundEncoder(data_md, 'ImagePositionPatient_2_f', 0.5, '_r05')" |
|
|
339 |
] |
|
|
340 |
}, |
|
|
341 |
{ |
|
|
342 |
"cell_type": "code", |
|
|
343 |
"execution_count": 26, |
|
|
344 |
"metadata": {}, |
|
|
345 |
"outputs": [], |
|
|
346 |
"source": [ |
|
|
347 |
"data_md['PixelSpacing_1_f'] = data_md.PixelSpacing_1.astype(float)\n", |
|
|
348 |
"\n", |
|
|
349 |
"data_md['PixelSpacing_1_enc_0'] = (data_md.PixelSpacing_1_f.between(0.488281,0.488282))\n", |
|
|
350 |
"data_md['PixelSpacing_1_enc_1'] = (data_md.PixelSpacing_1_f.between(0.494750,0.494864))\n", |
|
|
351 |
"\n", |
|
|
352 |
"data_md['PixelSpacing_1_f'] = np.clip(data_md['PixelSpacing_1_f'].values,0.3,0.7)\n", |
|
|
353 |
"\n", |
|
|
354 |
"data_md.loc[data_md.PixelSpacing_1_enc_0 | data_md.PixelSpacing_1_enc_1, 'PixelSpacing_1_f'] = 0.2" |
|
|
355 |
] |
|
|
356 |
}, |
|
|
357 |
{ |
|
|
358 |
"cell_type": "code", |
|
|
359 |
"execution_count": 27, |
|
|
360 |
"metadata": {}, |
|
|
361 |
"outputs": [], |
|
|
362 |
"source": [ |
|
|
363 |
"data_md = myLabelEncoder(data_md, 'WindowCenter_0', [30.0,36.0,40.0,35.0,47.0,50.0])" |
|
|
364 |
] |
|
|
365 |
}, |
|
|
366 |
{ |
|
|
367 |
"cell_type": "code", |
|
|
368 |
"execution_count": 28, |
|
|
369 |
"metadata": {}, |
|
|
370 |
"outputs": [], |
|
|
371 |
"source": [ |
|
|
372 |
"data_md['pos_max'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
373 |
" .groupby('SeriesInstanceUID').transform(lambda x: max(x))\n", |
|
|
374 |
"data_md['pos_min'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
375 |
" .groupby('SeriesInstanceUID').transform(lambda x: min(x))\n", |
|
|
376 |
"data_md['pos_size'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
377 |
" .groupby('SeriesInstanceUID').transform(lambda x: len(x))" |
|
|
378 |
] |
|
|
379 |
}, |
|
|
380 |
{ |
|
|
381 |
"cell_type": "code", |
|
|
382 |
"execution_count": 29, |
|
|
383 |
"metadata": {}, |
|
|
384 |
"outputs": [], |
|
|
385 |
"source": [ |
|
|
386 |
"data_md['pos_idx1'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
387 |
" .groupby('SeriesInstanceUID').transform(lambda x: np.arange(len(x)))\n", |
|
|
388 |
"data_md['pos_idx'] = data_md['pos_idx1']" |
|
|
389 |
] |
|
|
390 |
}, |
|
|
391 |
{ |
|
|
392 |
"cell_type": "code", |
|
|
393 |
"execution_count": 30, |
|
|
394 |
"metadata": {}, |
|
|
395 |
"outputs": [], |
|
|
396 |
"source": [ |
|
|
397 |
"data_md['pos_idx2'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
398 |
" .groupby('SeriesInstanceUID').transform(lambda x: np.arange(len(x))[::-1])" |
|
|
399 |
] |
|
|
400 |
}, |
|
|
401 |
{ |
|
|
402 |
"cell_type": "code", |
|
|
403 |
"execution_count": 31, |
|
|
404 |
"metadata": {}, |
|
|
405 |
"outputs": [], |
|
|
406 |
"source": [ |
|
|
407 |
"data_md['pos_inc1'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
408 |
" .groupby('SeriesInstanceUID').transform(lambda x: np.concatenate([[0],np.diff(x.values)]))\n", |
|
|
409 |
"data_md['pos_inc2'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
410 |
" .groupby('SeriesInstanceUID').transform(lambda x: np.concatenate([np.diff(x.values),[0]]))" |
|
|
411 |
] |
|
|
412 |
}, |
|
|
413 |
{ |
|
|
414 |
"cell_type": "code", |
|
|
415 |
"execution_count": 32, |
|
|
416 |
"metadata": { |
|
|
417 |
"scrolled": true |
|
|
418 |
}, |
|
|
419 |
"outputs": [], |
|
|
420 |
"source": [ |
|
|
421 |
"data_md['pos_inc1_grp'] = pd.cut(data_md.pos_inc1, [-1,2.0,3.5,4.5,1000], labels=np.arange(4))\n", |
|
|
422 |
"data_md = myLabelEncoder(data_md, 'pos_inc1_grp', [0,1,2,3], remaining_cat=False)\n", |
|
|
423 |
"\n", |
|
|
424 |
"del data_md['pos_inc1_grp']\n", |
|
|
425 |
"\n", |
|
|
426 |
"data_md['pos_inc2_grp'] = pd.cut(data_md.pos_inc2, [-1,2.0,3.5,4.5,1000], labels=np.arange(4))\n", |
|
|
427 |
"data_md = myLabelEncoder(data_md, 'pos_inc2_grp', [0,1,2,3], remaining_cat=False)\n", |
|
|
428 |
"\n", |
|
|
429 |
"del data_md['pos_inc2_grp']" |
|
|
430 |
] |
|
|
431 |
}, |
|
|
432 |
{ |
|
|
433 |
"cell_type": "code", |
|
|
434 |
"execution_count": 33, |
|
|
435 |
"metadata": {}, |
|
|
436 |
"outputs": [], |
|
|
437 |
"source": [ |
|
|
438 |
"data_md = myRoundEncoder(data_md, 'pos_inc1', 1, '_r1')\n", |
|
|
439 |
"data_md = myRoundEncoder(data_md, 'pos_inc1', 0.001, '_r0001')" |
|
|
440 |
] |
|
|
441 |
}, |
|
|
442 |
{ |
|
|
443 |
"cell_type": "code", |
|
|
444 |
"execution_count": 34, |
|
|
445 |
"metadata": {}, |
|
|
446 |
"outputs": [], |
|
|
447 |
"source": [ |
|
|
448 |
"data_md['pos_inc1_enc_0'] = (data_md.pos_inc1 == 0)\n", |
|
|
449 |
"data_md['pos_inc2_enc_0'] = (data_md.pos_inc2 == 0)\n", |
|
|
450 |
"data_md['pos_inc1_enc_1'] = (data_md.pos_inc1 == 5)\n", |
|
|
451 |
"data_md['pos_inc2_enc_1'] = (data_md.pos_inc2 == 5)\n", |
|
|
452 |
"\n", |
|
|
453 |
"data_md['pos_inc1'] = np.clip(data_md['pos_inc1'].values,0,7)\n", |
|
|
454 |
"data_md['pos_inc2'] = np.clip(data_md['pos_inc2'].values,0,7)\n", |
|
|
455 |
"\n", |
|
|
456 |
"data_md.loc[data_md.pos_inc1_enc_0 | data_md.pos_inc1_enc_1, 'pos_inc1'] = -1\n", |
|
|
457 |
"data_md.loc[data_md.pos_inc2_enc_0 | data_md.pos_inc2_enc_1, 'pos_inc2'] = -1" |
|
|
458 |
] |
|
|
459 |
}, |
|
|
460 |
{ |
|
|
461 |
"cell_type": "code", |
|
|
462 |
"execution_count": 35, |
|
|
463 |
"metadata": {}, |
|
|
464 |
"outputs": [], |
|
|
465 |
"source": [ |
|
|
466 |
"data_md = myLabelEncoder(data_md, 'pos_size', [32,40,36,28,34,30,35,33,38,44])" |
|
|
467 |
] |
|
|
468 |
}, |
|
|
469 |
{ |
|
|
470 |
"cell_type": "code", |
|
|
471 |
"execution_count": 36, |
|
|
472 |
"metadata": {}, |
|
|
473 |
"outputs": [], |
|
|
474 |
"source": [ |
|
|
475 |
"data_md['pos_range'] = (data_md['pos_max'] - data_md['pos_min'])\n", |
|
|
476 |
"data_md['pos_rel'] = ((data_md['ImagePositionPatient_2'] - data_md['pos_min'])/data_md['pos_range'])\\\n", |
|
|
477 |
" .where(data_md['pos_range'] > 0, 0.5)\n", |
|
|
478 |
"\n", |
|
|
479 |
"data_md['pos_zeros'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
480 |
" .groupby('SeriesInstanceUID').transform(lambda x: (np.diff(x.values) <= 0.001).sum())\n", |
|
|
481 |
"\n", |
|
|
482 |
"data_md['pos_inc_rng'] = data_md[['SeriesInstanceUID','ImagePositionPatient_2']]\\\n", |
|
|
483 |
" .groupby('SeriesInstanceUID').transform(lambda x: np.diff(x.values)[np.diff(x.values) > 0.1].max() /\n", |
|
|
484 |
" np.diff(x.values)[np.diff(x.values) > 0.1].min())\n", |
|
|
485 |
"\n", |
|
|
486 |
"data_md['pos_inc_rng'] = np.clip(data_md['pos_inc_rng'],0,3)" |
|
|
487 |
] |
|
|
488 |
}, |
|
|
489 |
{ |
|
|
490 |
"cell_type": "code", |
|
|
491 |
"execution_count": 37, |
|
|
492 |
"metadata": {}, |
|
|
493 |
"outputs": [], |
|
|
494 |
"source": [ |
|
|
495 |
"data_md['pos_min'] = np.clip(data_md['pos_min'].values,-500,500)\n", |
|
|
496 |
"data_md['pos_max'] = np.clip(data_md['pos_max'].values,-500,500)" |
|
|
497 |
] |
|
|
498 |
}, |
|
|
499 |
{ |
|
|
500 |
"cell_type": "code", |
|
|
501 |
"execution_count": 38, |
|
|
502 |
"metadata": {}, |
|
|
503 |
"outputs": [], |
|
|
504 |
"source": [ |
|
|
505 |
"data_md['pos_range'] = np.clip(data_md['pos_range'].values,100,250)\n", |
|
|
506 |
"\n", |
|
|
507 |
"data_md = myLabelEncoder(data_md, 'pos_zeros', [0,4,8])" |
|
|
508 |
] |
|
|
509 |
}, |
|
|
510 |
{ |
|
|
511 |
"cell_type": "code", |
|
|
512 |
"execution_count": 39, |
|
|
513 |
"metadata": {}, |
|
|
514 |
"outputs": [], |
|
|
515 |
"source": [ |
|
|
516 |
"data_md['PxlStd'] = np.clip(data_md['PxlStd'].values,0,1500)\n", |
|
|
517 |
"data_md['PxlMean'] = np.clip(data_md['PxlMean'].values,-1900,-100)\n", |
|
|
518 |
"data_md['PxlMin'] = np.clip(data_md['PxlMin'].values,-3500,-1000)\n", |
|
|
519 |
"data_md['PxlMax'] = np.clip(data_md['PxlMax'].values,-1000,3500)" |
|
|
520 |
] |
|
|
521 |
}, |
|
|
522 |
{ |
|
|
523 |
"cell_type": "code", |
|
|
524 |
"execution_count": 40, |
|
|
525 |
"metadata": {}, |
|
|
526 |
"outputs": [], |
|
|
527 |
"source": [ |
|
|
528 |
"data_md['PxlMin_grp'] = pd.cut(data_md.PxlMin, [-5000,-2500,-1500,2000], labels=np.arange(3))\n", |
|
|
529 |
"data_md = myLabelEncoder(data_md, 'PxlMin_grp', [0,1,2], remaining_cat=False)\n", |
|
|
530 |
"del data_md['PxlMin_grp']" |
|
|
531 |
] |
|
|
532 |
}, |
|
|
533 |
{ |
|
|
534 |
"cell_type": "code", |
|
|
535 |
"execution_count": null, |
|
|
536 |
"metadata": {}, |
|
|
537 |
"outputs": [], |
|
|
538 |
"source": [] |
|
|
539 |
}, |
|
|
540 |
{ |
|
|
541 |
"cell_type": "code", |
|
|
542 |
"execution_count": 41, |
|
|
543 |
"metadata": {}, |
|
|
544 |
"outputs": [], |
|
|
545 |
"source": [ |
|
|
546 |
"cnts = data_md[['SeriesInstanceUID','PxlMin_grp_le']].groupby('SeriesInstanceUID').agg(lambda x: (x == 0).sum() > 10)\n", |
|
|
547 |
"cnts.columns = ['PxlMin_zero']\n", |
|
|
548 |
"data_md = data_md.join(cnts, on = 'SeriesInstanceUID')" |
|
|
549 |
] |
|
|
550 |
}, |
|
|
551 |
{ |
|
|
552 |
"cell_type": "code", |
|
|
553 |
"execution_count": 42, |
|
|
554 |
"metadata": {}, |
|
|
555 |
"outputs": [], |
|
|
556 |
"source": [ |
|
|
557 |
"data_md = data_md.join(train_df.set_index('sop_id'), on = 'SOPInstanceUID')" |
|
|
558 |
] |
|
|
559 |
}, |
|
|
560 |
{ |
|
|
561 |
"cell_type": "code", |
|
|
562 |
"execution_count": 43, |
|
|
563 |
"metadata": {}, |
|
|
564 |
"outputs": [], |
|
|
565 |
"source": [ |
|
|
566 |
"assert data_md['any'].isnull().sum() == 121232" |
|
|
567 |
] |
|
|
568 |
}, |
|
|
569 |
{ |
|
|
570 |
"cell_type": "code", |
|
|
571 |
"execution_count": 44, |
|
|
572 |
"metadata": {}, |
|
|
573 |
"outputs": [ |
|
|
574 |
{ |
|
|
575 |
"data": { |
|
|
576 |
"text/html": [ |
|
|
577 |
"<div>\n", |
|
|
578 |
"<style scoped>\n", |
|
|
579 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
580 |
" vertical-align: middle;\n", |
|
|
581 |
" }\n", |
|
|
582 |
"\n", |
|
|
583 |
" .dataframe tbody tr th {\n", |
|
|
584 |
" vertical-align: top;\n", |
|
|
585 |
" }\n", |
|
|
586 |
"\n", |
|
|
587 |
" .dataframe thead tr th {\n", |
|
|
588 |
" text-align: left;\n", |
|
|
589 |
" }\n", |
|
|
590 |
"\n", |
|
|
591 |
" .dataframe thead tr:last-of-type th {\n", |
|
|
592 |
" text-align: right;\n", |
|
|
593 |
" }\n", |
|
|
594 |
"</style>\n", |
|
|
595 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
596 |
" <thead>\n", |
|
|
597 |
" <tr>\n", |
|
|
598 |
" <th></th>\n", |
|
|
599 |
" <th>test</th>\n", |
|
|
600 |
" <th colspan=\"2\" halign=\"left\">False</th>\n", |
|
|
601 |
" <th>True</th>\n", |
|
|
602 |
" </tr>\n", |
|
|
603 |
" <tr>\n", |
|
|
604 |
" <th></th>\n", |
|
|
605 |
" <th>test2</th>\n", |
|
|
606 |
" <th>False</th>\n", |
|
|
607 |
" <th>True</th>\n", |
|
|
608 |
" <th>False</th>\n", |
|
|
609 |
" </tr>\n", |
|
|
610 |
" <tr>\n", |
|
|
611 |
" <th>PxlMin_grp_le</th>\n", |
|
|
612 |
" <th>PxlMin_zero</th>\n", |
|
|
613 |
" <th></th>\n", |
|
|
614 |
" <th></th>\n", |
|
|
615 |
" <th></th>\n", |
|
|
616 |
" </tr>\n", |
|
|
617 |
" </thead>\n", |
|
|
618 |
" <tbody>\n", |
|
|
619 |
" <tr>\n", |
|
|
620 |
" <td rowspan=\"2\" valign=\"top\">0</td>\n", |
|
|
621 |
" <td>False</td>\n", |
|
|
622 |
" <td>126</td>\n", |
|
|
623 |
" <td>17</td>\n", |
|
|
624 |
" <td>4</td>\n", |
|
|
625 |
" </tr>\n", |
|
|
626 |
" <tr>\n", |
|
|
627 |
" <td>True</td>\n", |
|
|
628 |
" <td>227189</td>\n", |
|
|
629 |
" <td>37123</td>\n", |
|
|
630 |
" <td>73512</td>\n", |
|
|
631 |
" </tr>\n", |
|
|
632 |
" <tr>\n", |
|
|
633 |
" <td>1</td>\n", |
|
|
634 |
" <td>False</td>\n", |
|
|
635 |
" <td>83433</td>\n", |
|
|
636 |
" <td>16840</td>\n", |
|
|
637 |
" <td>1095</td>\n", |
|
|
638 |
" </tr>\n", |
|
|
639 |
" <tr>\n", |
|
|
640 |
" <td>2</td>\n", |
|
|
641 |
" <td>False</td>\n", |
|
|
642 |
" <td>363509</td>\n", |
|
|
643 |
" <td>67252</td>\n", |
|
|
644 |
" <td>3934</td>\n", |
|
|
645 |
" </tr>\n", |
|
|
646 |
" </tbody>\n", |
|
|
647 |
"</table>\n", |
|
|
648 |
"</div>" |
|
|
649 |
], |
|
|
650 |
"text/plain": [ |
|
|
651 |
"test False True \n", |
|
|
652 |
"test2 False True False\n", |
|
|
653 |
"PxlMin_grp_le PxlMin_zero \n", |
|
|
654 |
"0 False 126 17 4\n", |
|
|
655 |
" True 227189 37123 73512\n", |
|
|
656 |
"1 False 83433 16840 1095\n", |
|
|
657 |
"2 False 363509 67252 3934" |
|
|
658 |
] |
|
|
659 |
}, |
|
|
660 |
"execution_count": 44, |
|
|
661 |
"metadata": {}, |
|
|
662 |
"output_type": "execute_result" |
|
|
663 |
} |
|
|
664 |
], |
|
|
665 |
"source": [ |
|
|
666 |
"pd.crosstab([data_md.PxlMin_grp_le, data_md.PxlMin_zero],\n", |
|
|
667 |
" [data_md.test, data_md.test2])" |
|
|
668 |
] |
|
|
669 |
}, |
|
|
670 |
{ |
|
|
671 |
"cell_type": "code", |
|
|
672 |
"execution_count": null, |
|
|
673 |
"metadata": {}, |
|
|
674 |
"outputs": [], |
|
|
675 |
"source": [] |
|
|
676 |
}, |
|
|
677 |
{ |
|
|
678 |
"cell_type": "code", |
|
|
679 |
"execution_count": 45, |
|
|
680 |
"metadata": {}, |
|
|
681 |
"outputs": [], |
|
|
682 |
"source": [ |
|
|
683 |
"cnts = data_md[['SeriesInstanceUID','any']].groupby('SeriesInstanceUID').agg(lambda x: x.sum() > 0)\n", |
|
|
684 |
"cnts.columns = ['any_series']\n", |
|
|
685 |
"data_md = data_md.join(cnts, on = 'SeriesInstanceUID')" |
|
|
686 |
] |
|
|
687 |
}, |
|
|
688 |
{ |
|
|
689 |
"cell_type": "code", |
|
|
690 |
"execution_count": 46, |
|
|
691 |
"metadata": {}, |
|
|
692 |
"outputs": [ |
|
|
693 |
{ |
|
|
694 |
"data": { |
|
|
695 |
"text/plain": [ |
|
|
696 |
"False 573100\n", |
|
|
697 |
"True 300934\n", |
|
|
698 |
"Name: any_series, dtype: int64" |
|
|
699 |
] |
|
|
700 |
}, |
|
|
701 |
"execution_count": 46, |
|
|
702 |
"metadata": {}, |
|
|
703 |
"output_type": "execute_result" |
|
|
704 |
} |
|
|
705 |
], |
|
|
706 |
"source": [ |
|
|
707 |
"data_md.any_series.value_counts()" |
|
|
708 |
] |
|
|
709 |
}, |
|
|
710 |
{ |
|
|
711 |
"cell_type": "code", |
|
|
712 |
"execution_count": null, |
|
|
713 |
"metadata": {}, |
|
|
714 |
"outputs": [], |
|
|
715 |
"source": [] |
|
|
716 |
}, |
|
|
717 |
{ |
|
|
718 |
"cell_type": "code", |
|
|
719 |
"execution_count": 47, |
|
|
720 |
"metadata": {}, |
|
|
721 |
"outputs": [], |
|
|
722 |
"source": [ |
|
|
723 |
"cnts = data_md[['SeriesInstanceUID','PatientID']].groupby('PatientID').agg(lambda x: x.nunique())\n", |
|
|
724 |
"cnts.columns = ['SeriesPP']\n", |
|
|
725 |
"data_md = data_md.join(cnts, on='PatientID')" |
|
|
726 |
] |
|
|
727 |
}, |
|
|
728 |
{ |
|
|
729 |
"cell_type": "code", |
|
|
730 |
"execution_count": null, |
|
|
731 |
"metadata": {}, |
|
|
732 |
"outputs": [], |
|
|
733 |
"source": [] |
|
|
734 |
}, |
|
|
735 |
{ |
|
|
736 |
"cell_type": "code", |
|
|
737 |
"execution_count": 48, |
|
|
738 |
"metadata": {}, |
|
|
739 |
"outputs": [], |
|
|
740 |
"source": [ |
|
|
741 |
"assert len([col for col in cols_all if col not in data_md.columns]) == 0\n", |
|
|
742 |
"assert len([col for col in data_md.columns if col not in (cols_all + all_ich)]) == 0" |
|
|
743 |
] |
|
|
744 |
}, |
|
|
745 |
{ |
|
|
746 |
"cell_type": "code", |
|
|
747 |
"execution_count": null, |
|
|
748 |
"metadata": {}, |
|
|
749 |
"outputs": [], |
|
|
750 |
"source": [] |
|
|
751 |
}, |
|
|
752 |
{ |
|
|
753 |
"cell_type": "code", |
|
|
754 |
"execution_count": 49, |
|
|
755 |
"metadata": {}, |
|
|
756 |
"outputs": [], |
|
|
757 |
"source": [ |
|
|
758 |
"data_md.to_csv(PATH_WORK/'data_md.csv', index=False)" |
|
|
759 |
] |
|
|
760 |
}, |
|
|
761 |
{ |
|
|
762 |
"cell_type": "code", |
|
|
763 |
"execution_count": null, |
|
|
764 |
"metadata": {}, |
|
|
765 |
"outputs": [], |
|
|
766 |
"source": [] |
|
|
767 |
}, |
|
|
768 |
{ |
|
|
769 |
"cell_type": "code", |
|
|
770 |
"execution_count": 50, |
|
|
771 |
"metadata": {}, |
|
|
772 |
"outputs": [], |
|
|
773 |
"source": [ |
|
|
774 |
"for col in (cols_float + cols_bool):\n", |
|
|
775 |
" data_md[col] = data_md[col].astype(float)\n", |
|
|
776 |
"\n", |
|
|
777 |
"#for col in cols_cat:\n", |
|
|
778 |
"# data_md[col] = pd.factorize(data_md[col])[0]\n", |
|
|
779 |
"# data_md[col] = data_md[col].astype('category')" |
|
|
780 |
] |
|
|
781 |
}, |
|
|
782 |
{ |
|
|
783 |
"cell_type": "code", |
|
|
784 |
"execution_count": null, |
|
|
785 |
"metadata": {}, |
|
|
786 |
"outputs": [], |
|
|
787 |
"source": [] |
|
|
788 |
}, |
|
|
789 |
{ |
|
|
790 |
"cell_type": "code", |
|
|
791 |
"execution_count": 51, |
|
|
792 |
"metadata": {}, |
|
|
793 |
"outputs": [], |
|
|
794 |
"source": [ |
|
|
795 |
"M = 4\n", |
|
|
796 |
"data_md['ImageOrientationPatient_4_f'] = M*(data_md['ImageOrientationPatient_4_f'] - 0.8)/0.3\n", |
|
|
797 |
"data_md['ImageOrientationPatient_5_f'] = M*(data_md['ImageOrientationPatient_5_f'] + 0.5)/0.6\n", |
|
|
798 |
"data_md['ImagePositionPatient_0_f'] = M*(data_md['ImagePositionPatient_0_f'] + 173)/150\n", |
|
|
799 |
"data_md['ImagePositionPatient_1_f'] = M*(data_md['ImagePositionPatient_1_f'] + 65)/300\n", |
|
|
800 |
"data_md['ImagePositionPatient_2_f'] = M*(data_md['ImagePositionPatient_2_f'] - 167)/2792\n", |
|
|
801 |
"data_md['PixelSpacing_1_f'] = M*(data_md['PixelSpacing_1_f'] - 0.26)/0.5\n", |
|
|
802 |
"data_md['pos_max'] = M*(data_md['pos_max'])/1000\n", |
|
|
803 |
"data_md['pos_min'] = M*(data_md['pos_min'])/1000\n", |
|
|
804 |
"data_md['pos_size'] = M*(data_md['pos_size'] - 35)/40\n", |
|
|
805 |
"data_md['pos_idx1'] = M*(data_md['pos_idx1'] - 17)/59\n", |
|
|
806 |
"data_md['pos_idx2'] = M*(data_md['pos_idx2'] - 17)/59\n", |
|
|
807 |
"data_md['pos_inc1'] = M*(data_md['pos_inc1'] - 2)/8\n", |
|
|
808 |
"data_md['pos_inc2'] = M*(data_md['pos_inc2'] - 2)/8\n", |
|
|
809 |
"data_md['pos_range'] = M*(data_md['pos_range'] - 165)/150\n", |
|
|
810 |
"data_md['pos_rel'] = M*(data_md['pos_rel'] - 0.5)/1.0\n", |
|
|
811 |
"data_md['pos_zeros'] = M*(data_md['pos_zeros'])/10\n", |
|
|
812 |
"data_md['pos_inc_rng'] = M*(data_md['pos_inc_rng'] - 1.3)/2.0\n", |
|
|
813 |
"\n", |
|
|
814 |
"data_md['PxlMin'] = M*(data_md['PxlMin'] + 2000)/3000\n", |
|
|
815 |
"data_md['PxlMax'] = M*(data_md['PxlMax'] - 1500)/3000\n", |
|
|
816 |
"data_md['PxlMean'] = M*(data_md['PxlMean'] + 800)/1000\n", |
|
|
817 |
"data_md['PxlStd'] = M*(data_md['PxlStd'] - 800)/1000\n", |
|
|
818 |
"data_md['SeriesPP'] = (data_md['SeriesPP'] - 2)/2" |
|
|
819 |
] |
|
|
820 |
}, |
|
|
821 |
{ |
|
|
822 |
"cell_type": "code", |
|
|
823 |
"execution_count": null, |
|
|
824 |
"metadata": {}, |
|
|
825 |
"outputs": [], |
|
|
826 |
"source": [] |
|
|
827 |
}, |
|
|
828 |
{ |
|
|
829 |
"cell_type": "code", |
|
|
830 |
"execution_count": 52, |
|
|
831 |
"metadata": { |
|
|
832 |
"scrolled": true |
|
|
833 |
}, |
|
|
834 |
"outputs": [ |
|
|
835 |
{ |
|
|
836 |
"data": { |
|
|
837 |
"text/plain": [ |
|
|
838 |
"False 795489\n", |
|
|
839 |
"True 78545\n", |
|
|
840 |
"Name: test, dtype: int64" |
|
|
841 |
] |
|
|
842 |
}, |
|
|
843 |
"execution_count": 52, |
|
|
844 |
"metadata": {}, |
|
|
845 |
"output_type": "execute_result" |
|
|
846 |
} |
|
|
847 |
], |
|
|
848 |
"source": [ |
|
|
849 |
"data_md.test.value_counts()" |
|
|
850 |
] |
|
|
851 |
}, |
|
|
852 |
{ |
|
|
853 |
"cell_type": "code", |
|
|
854 |
"execution_count": 53, |
|
|
855 |
"metadata": {}, |
|
|
856 |
"outputs": [], |
|
|
857 |
"source": [ |
|
|
858 |
"train_md = data_md.loc[~data_md.test & ~data_md.test2].copy().reset_index(drop=True)\n", |
|
|
859 |
"test_md = data_md.loc[data_md.test].copy().reset_index(drop=True)\n", |
|
|
860 |
"test2_md = data_md.loc[data_md.test2].copy().reset_index(drop=True)\n", |
|
|
861 |
"\n", |
|
|
862 |
"for col in all_ich:\n", |
|
|
863 |
" train_md[col] = train_md[col].astype(int)\n", |
|
|
864 |
" test_md[col] = test_md[col].astype(int)\n", |
|
|
865 |
"\n", |
|
|
866 |
"train_md.to_csv(PATH_WORK/'train_md.csv', index=False)\n", |
|
|
867 |
"test_md.to_csv(PATH_WORK/'test_md.csv', index=False)\n", |
|
|
868 |
"test2_md.to_csv(PATH_WORK/'test2_md.csv', index=False)" |
|
|
869 |
] |
|
|
870 |
}, |
|
|
871 |
{ |
|
|
872 |
"cell_type": "code", |
|
|
873 |
"execution_count": 147, |
|
|
874 |
"metadata": {}, |
|
|
875 |
"outputs": [], |
|
|
876 |
"source": [ |
|
|
877 |
"test_md = pd.read_csv(PATH_WORK/'test_md.csv')\n", |
|
|
878 |
"test2_md = pd.read_csv(PATH_WORK/'test2_md.csv')\n", |
|
|
879 |
"train_md = pd.read_csv(PATH_WORK/'train_md.csv')" |
|
|
880 |
] |
|
|
881 |
}, |
|
|
882 |
{ |
|
|
883 |
"cell_type": "code", |
|
|
884 |
"execution_count": 148, |
|
|
885 |
"metadata": {}, |
|
|
886 |
"outputs": [], |
|
|
887 |
"source": [ |
|
|
888 |
"data_md = pd.read_csv(PATH_WORK/'data_md.csv')" |
|
|
889 |
] |
|
|
890 |
}, |
|
|
891 |
{ |
|
|
892 |
"cell_type": "code", |
|
|
893 |
"execution_count": null, |
|
|
894 |
"metadata": {}, |
|
|
895 |
"outputs": [], |
|
|
896 |
"source": [] |
|
|
897 |
}, |
|
|
898 |
{ |
|
|
899 |
"cell_type": "code", |
|
|
900 |
"execution_count": null, |
|
|
901 |
"metadata": {}, |
|
|
902 |
"outputs": [], |
|
|
903 |
"source": [] |
|
|
904 |
}, |
|
|
905 |
{ |
|
|
906 |
"cell_type": "markdown", |
|
|
907 |
"metadata": {}, |
|
|
908 |
"source": [ |
|
|
909 |
"# Analysis" |
|
|
910 |
] |
|
|
911 |
}, |
|
|
912 |
{ |
|
|
913 |
"cell_type": "code", |
|
|
914 |
"execution_count": 56, |
|
|
915 |
"metadata": {}, |
|
|
916 |
"outputs": [ |
|
|
917 |
{ |
|
|
918 |
"name": "stdout", |
|
|
919 |
"output_type": "stream", |
|
|
920 |
"text": [ |
|
|
921 |
"WindowCenter_1_le 5\n", |
|
|
922 |
"BitType_le 5\n", |
|
|
923 |
"WindowCenter_0_le 7\n", |
|
|
924 |
"pos_inc1_grp_le 4\n", |
|
|
925 |
"pos_inc2_grp_le 4\n", |
|
|
926 |
"pos_size_le 11\n", |
|
|
927 |
"pos_zeros_le 4\n", |
|
|
928 |
"WindowWidth_0_le 6\n", |
|
|
929 |
"WindowWidth_1_le 3\n", |
|
|
930 |
"PxlMin_grp_le 3\n" |
|
|
931 |
] |
|
|
932 |
} |
|
|
933 |
], |
|
|
934 |
"source": [ |
|
|
935 |
"for col in cols_le:\n", |
|
|
936 |
" print(col, len(data_md[col].unique()))" |
|
|
937 |
] |
|
|
938 |
}, |
|
|
939 |
{ |
|
|
940 |
"cell_type": "code", |
|
|
941 |
"execution_count": null, |
|
|
942 |
"metadata": {}, |
|
|
943 |
"outputs": [], |
|
|
944 |
"source": [] |
|
|
945 |
}, |
|
|
946 |
{ |
|
|
947 |
"cell_type": "code", |
|
|
948 |
"execution_count": 57, |
|
|
949 |
"metadata": {}, |
|
|
950 |
"outputs": [ |
|
|
951 |
{ |
|
|
952 |
"data": { |
|
|
953 |
"text/plain": [ |
|
|
954 |
"ImageOrientationPatient_4_f 0.058563\n", |
|
|
955 |
"ImageOrientationPatient_5_f 0.222398\n", |
|
|
956 |
"ImagePositionPatient_0_f 0.048668\n", |
|
|
957 |
"ImagePositionPatient_1_f 0.066942\n", |
|
|
958 |
"ImagePositionPatient_2_f 0.010251\n", |
|
|
959 |
"PixelSpacing_1_f 0.069438\n", |
|
|
960 |
"pos_max 0.880705\n", |
|
|
961 |
"pos_min 0.261473\n", |
|
|
962 |
"pos_size 0.024645\n", |
|
|
963 |
"pos_idx1 0.008354\n", |
|
|
964 |
"pos_idx2 0.008354\n", |
|
|
965 |
"pos_inc1 0.030327\n", |
|
|
966 |
"pos_inc2 0.030327\n", |
|
|
967 |
"pos_range 0.013157\n", |
|
|
968 |
"pos_rel -0.057270\n", |
|
|
969 |
"pos_zeros 0.024279\n", |
|
|
970 |
"pos_inc_rng -0.080632\n", |
|
|
971 |
"PxlMin 0.236361\n", |
|
|
972 |
"PxlMax 0.149736\n", |
|
|
973 |
"PxlStd -0.032196\n", |
|
|
974 |
"PxlMean 0.124001\n", |
|
|
975 |
"SeriesPP -0.250615\n", |
|
|
976 |
"dtype: float64" |
|
|
977 |
] |
|
|
978 |
}, |
|
|
979 |
"execution_count": 57, |
|
|
980 |
"metadata": {}, |
|
|
981 |
"output_type": "execute_result" |
|
|
982 |
} |
|
|
983 |
], |
|
|
984 |
"source": [ |
|
|
985 |
"train_md[cols_float].mean()" |
|
|
986 |
] |
|
|
987 |
}, |
|
|
988 |
{ |
|
|
989 |
"cell_type": "code", |
|
|
990 |
"execution_count": 58, |
|
|
991 |
"metadata": {}, |
|
|
992 |
"outputs": [ |
|
|
993 |
{ |
|
|
994 |
"data": { |
|
|
995 |
"text/plain": [ |
|
|
996 |
"ImageOrientationPatient_4_f 1.693531\n", |
|
|
997 |
"ImageOrientationPatient_5_f 1.159401\n", |
|
|
998 |
"ImagePositionPatient_0_f 1.069924\n", |
|
|
999 |
"ImagePositionPatient_1_f 0.866594\n", |
|
|
1000 |
"ImagePositionPatient_2_f 0.367141\n", |
|
|
1001 |
"PixelSpacing_1_f 0.915759\n", |
|
|
1002 |
"pos_max 0.468271\n", |
|
|
1003 |
"pos_min 0.581765\n", |
|
|
1004 |
"pos_size 0.536172\n", |
|
|
1005 |
"pos_idx1 0.720769\n", |
|
|
1006 |
"pos_idx2 0.720769\n", |
|
|
1007 |
"pos_inc1 1.502420\n", |
|
|
1008 |
"pos_inc2 1.502420\n", |
|
|
1009 |
"pos_range 0.489795\n", |
|
|
1010 |
"pos_rel 1.198624\n", |
|
|
1011 |
"pos_zeros 0.361715\n", |
|
|
1012 |
"pos_inc_rng 1.106501\n", |
|
|
1013 |
"PxlMin 1.222550\n", |
|
|
1014 |
"PxlMax 0.713566\n", |
|
|
1015 |
"PxlStd 1.243883\n", |
|
|
1016 |
"PxlMean 1.049480\n", |
|
|
1017 |
"SeriesPP 0.680281\n", |
|
|
1018 |
"dtype: float64" |
|
|
1019 |
] |
|
|
1020 |
}, |
|
|
1021 |
"execution_count": 58, |
|
|
1022 |
"metadata": {}, |
|
|
1023 |
"output_type": "execute_result" |
|
|
1024 |
} |
|
|
1025 |
], |
|
|
1026 |
"source": [ |
|
|
1027 |
"train_md[cols_float].std()" |
|
|
1028 |
] |
|
|
1029 |
}, |
|
|
1030 |
{ |
|
|
1031 |
"cell_type": "code", |
|
|
1032 |
"execution_count": 59, |
|
|
1033 |
"metadata": {}, |
|
|
1034 |
"outputs": [], |
|
|
1035 |
"source": [ |
|
|
1036 |
"cnts = data_md[['SeriesInstanceUID'] + cols_bool]\\\n", |
|
|
1037 |
" .groupby('SeriesInstanceUID').agg(lambda x: len(x.unique()))" |
|
|
1038 |
] |
|
|
1039 |
}, |
|
|
1040 |
{ |
|
|
1041 |
"cell_type": "code", |
|
|
1042 |
"execution_count": 60, |
|
|
1043 |
"metadata": {}, |
|
|
1044 |
"outputs": [ |
|
|
1045 |
{ |
|
|
1046 |
"data": { |
|
|
1047 |
"text/plain": [ |
|
|
1048 |
"ImageOrientationPatient_4_enc_0 1.000158\n", |
|
|
1049 |
"ImageOrientationPatient_4_enc_1 1.000158\n", |
|
|
1050 |
"ImageOrientationPatient_5_enc_0 1.000158\n", |
|
|
1051 |
"ImagePositionPatient_0_enc_0 1.000119\n", |
|
|
1052 |
"ImagePositionPatient_0_enc_1 1.000000\n", |
|
|
1053 |
"ImagePositionPatient_0_f_r1 1.000119\n", |
|
|
1054 |
"ImagePositionPatient_0_f_r05 1.000119\n", |
|
|
1055 |
"ImagePositionPatient_1_enc_0 1.000079\n", |
|
|
1056 |
"ImagePositionPatient_2_f_r05 1.024939\n", |
|
|
1057 |
"PixelSpacing_1_enc_0 1.000040\n", |
|
|
1058 |
"pos_inc1_r1 1.665268\n", |
|
|
1059 |
"pos_inc1_r0001 1.428984\n", |
|
|
1060 |
"pos_inc1_enc_0 2.000000\n", |
|
|
1061 |
"pos_inc2_enc_0 2.000000\n", |
|
|
1062 |
"pos_inc1_enc_1 1.435555\n", |
|
|
1063 |
"pos_inc2_enc_1 1.435555\n", |
|
|
1064 |
"dtype: float64" |
|
|
1065 |
] |
|
|
1066 |
}, |
|
|
1067 |
"execution_count": 60, |
|
|
1068 |
"metadata": {}, |
|
|
1069 |
"output_type": "execute_result" |
|
|
1070 |
} |
|
|
1071 |
], |
|
|
1072 |
"source": [ |
|
|
1073 |
"cnts.sum()/cnts.shape[0]" |
|
|
1074 |
] |
|
|
1075 |
}, |
|
|
1076 |
{ |
|
|
1077 |
"cell_type": "code", |
|
|
1078 |
"execution_count": 61, |
|
|
1079 |
"metadata": {}, |
|
|
1080 |
"outputs": [], |
|
|
1081 |
"source": [ |
|
|
1082 |
"cnts = data_md[['SeriesInstanceUID'] + cols_le]\\\n", |
|
|
1083 |
" .groupby('SeriesInstanceUID').agg(lambda x: len(x.unique()))" |
|
|
1084 |
] |
|
|
1085 |
}, |
|
|
1086 |
{ |
|
|
1087 |
"cell_type": "code", |
|
|
1088 |
"execution_count": 62, |
|
|
1089 |
"metadata": {}, |
|
|
1090 |
"outputs": [ |
|
|
1091 |
{ |
|
|
1092 |
"data": { |
|
|
1093 |
"text/plain": [ |
|
|
1094 |
"WindowCenter_1_le 1.000000\n", |
|
|
1095 |
"BitType_le 1.000040\n", |
|
|
1096 |
"WindowCenter_0_le 1.001742\n", |
|
|
1097 |
"pos_inc1_grp_le 2.196105\n", |
|
|
1098 |
"pos_inc2_grp_le 2.196105\n", |
|
|
1099 |
"pos_size_le 1.000000\n", |
|
|
1100 |
"pos_zeros_le 1.000000\n", |
|
|
1101 |
"WindowWidth_0_le 1.023276\n", |
|
|
1102 |
"WindowWidth_1_le 1.000000\n", |
|
|
1103 |
"PxlMin_grp_le 1.005621\n", |
|
|
1104 |
"dtype: float64" |
|
|
1105 |
] |
|
|
1106 |
}, |
|
|
1107 |
"execution_count": 62, |
|
|
1108 |
"metadata": {}, |
|
|
1109 |
"output_type": "execute_result" |
|
|
1110 |
} |
|
|
1111 |
], |
|
|
1112 |
"source": [ |
|
|
1113 |
"cnts.sum()/cnts.shape[0]" |
|
|
1114 |
] |
|
|
1115 |
}, |
|
|
1116 |
{ |
|
|
1117 |
"cell_type": "code", |
|
|
1118 |
"execution_count": 63, |
|
|
1119 |
"metadata": {}, |
|
|
1120 |
"outputs": [ |
|
|
1121 |
{ |
|
|
1122 |
"data": { |
|
|
1123 |
"text/plain": [ |
|
|
1124 |
"1 25120\n", |
|
|
1125 |
"2 142\n", |
|
|
1126 |
"Name: PxlMin_grp_le, dtype: int64" |
|
|
1127 |
] |
|
|
1128 |
}, |
|
|
1129 |
"execution_count": 63, |
|
|
1130 |
"metadata": {}, |
|
|
1131 |
"output_type": "execute_result" |
|
|
1132 |
} |
|
|
1133 |
], |
|
|
1134 |
"source": [ |
|
|
1135 |
"cnts.PxlMin_grp_le.value_counts()" |
|
|
1136 |
] |
|
|
1137 |
}, |
|
|
1138 |
{ |
|
|
1139 |
"cell_type": "code", |
|
|
1140 |
"execution_count": null, |
|
|
1141 |
"metadata": {}, |
|
|
1142 |
"outputs": [], |
|
|
1143 |
"source": [] |
|
|
1144 |
}, |
|
|
1145 |
{ |
|
|
1146 |
"cell_type": "code", |
|
|
1147 |
"execution_count": 64, |
|
|
1148 |
"metadata": {}, |
|
|
1149 |
"outputs": [], |
|
|
1150 |
"source": [ |
|
|
1151 |
"significant_cols = []" |
|
|
1152 |
] |
|
|
1153 |
}, |
|
|
1154 |
{ |
|
|
1155 |
"cell_type": "code", |
|
|
1156 |
"execution_count": 65, |
|
|
1157 |
"metadata": { |
|
|
1158 |
"scrolled": true |
|
|
1159 |
}, |
|
|
1160 |
"outputs": [ |
|
|
1161 |
{ |
|
|
1162 |
"data": { |
|
|
1163 |
"image/png": "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\n", |
|
|
1164 |
"text/plain": [ |
|
|
1165 |
"<Figure size 1728x2160 with 21 Axes>" |
|
|
1166 |
] |
|
|
1167 |
}, |
|
|
1168 |
"metadata": { |
|
|
1169 |
"needs_background": "light" |
|
|
1170 |
}, |
|
|
1171 |
"output_type": "display_data" |
|
|
1172 |
} |
|
|
1173 |
], |
|
|
1174 |
"source": [ |
|
|
1175 |
"fig, axes = plt.subplots(7, 3, figsize=(24, 30))\n", |
|
|
1176 |
"\n", |
|
|
1177 |
"for i, ax in enumerate(axes.flatten()):\n", |
|
|
1178 |
" if i >= len(cols_float): continue\n", |
|
|
1179 |
" col = cols_float[i]\n", |
|
|
1180 |
" a = ax.hist(train_md[col], bins=100, density=True, alpha=0.5)\n", |
|
|
1181 |
" a = ax.hist(test_md[col], bins=100, density=True, alpha=0.5)\n", |
|
|
1182 |
" ks = ks_2samp(train_md[col].values, test_md[col].values)\n", |
|
|
1183 |
" ax.set_title(col + (' IMPORTANT' if col in significant_cols else '') + ' ks {:.4f}'.format(ks.statistic))" |
|
|
1184 |
] |
|
|
1185 |
}, |
|
|
1186 |
{ |
|
|
1187 |
"cell_type": "code", |
|
|
1188 |
"execution_count": 66, |
|
|
1189 |
"metadata": { |
|
|
1190 |
"scrolled": true |
|
|
1191 |
}, |
|
|
1192 |
"outputs": [ |
|
|
1193 |
{ |
|
|
1194 |
"data": { |
|
|
1195 |
"image/png": "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\n", |
|
|
1196 |
"text/plain": [ |
|
|
1197 |
"<Figure size 1728x2160 with 21 Axes>" |
|
|
1198 |
] |
|
|
1199 |
}, |
|
|
1200 |
"metadata": { |
|
|
1201 |
"needs_background": "light" |
|
|
1202 |
}, |
|
|
1203 |
"output_type": "display_data" |
|
|
1204 |
} |
|
|
1205 |
], |
|
|
1206 |
"source": [ |
|
|
1207 |
"fig, axes = plt.subplots(7, 3, figsize=(24, 30))\n", |
|
|
1208 |
"\n", |
|
|
1209 |
"for i, ax in enumerate(axes.flatten()):\n", |
|
|
1210 |
" if i >= len(cols_float): continue\n", |
|
|
1211 |
" col = cols_float[i]\n", |
|
|
1212 |
" a = ax.hist(train_md[col], bins=100, density=True, alpha=0.5)\n", |
|
|
1213 |
" a = ax.hist(test2_md[col], bins=100, density=True, alpha=0.5)\n", |
|
|
1214 |
" ks = ks_2samp(train_md[col].values, test2_md[col].values)\n", |
|
|
1215 |
" ax.set_title(col + (' IMPORTANT' if col in significant_cols else '') + ' ks {:.4f}'.format(ks.statistic))" |
|
|
1216 |
] |
|
|
1217 |
}, |
|
|
1218 |
{ |
|
|
1219 |
"cell_type": "code", |
|
|
1220 |
"execution_count": 67, |
|
|
1221 |
"metadata": { |
|
|
1222 |
"scrolled": true |
|
|
1223 |
}, |
|
|
1224 |
"outputs": [ |
|
|
1225 |
{ |
|
|
1226 |
"name": "stdout", |
|
|
1227 |
"output_type": "stream", |
|
|
1228 |
"text": [ |
|
|
1229 |
"any False True \n", |
|
|
1230 |
"WindowCenter_1_le \n", |
|
|
1231 |
"0 250309 44497\n", |
|
|
1232 |
"1 71879 13086\n", |
|
|
1233 |
"2 10411 2380\n", |
|
|
1234 |
"3 417047 60554\n", |
|
|
1235 |
"4 3156 715\n", |
|
|
1236 |
"any False True \n", |
|
|
1237 |
"BitType_le \n", |
|
|
1238 |
"0 414096 59958\n", |
|
|
1239 |
"1 326639 58793\n", |
|
|
1240 |
"2 2312 777\n", |
|
|
1241 |
"3 2951 596\n", |
|
|
1242 |
"4 6804 1108\n", |
|
|
1243 |
"any False True \n", |
|
|
1244 |
"WindowCenter_0_le \n", |
|
|
1245 |
"0 282676 35234\n", |
|
|
1246 |
"1 250309 44497\n", |
|
|
1247 |
"2 153344 29149\n", |
|
|
1248 |
"3 48586 8214\n", |
|
|
1249 |
"4 10377 2380\n", |
|
|
1250 |
"5 3957 766\n", |
|
|
1251 |
"6 3553 992\n", |
|
|
1252 |
"any False True \n", |
|
|
1253 |
"pos_inc1_grp_le \n", |
|
|
1254 |
"0 28873 4410\n", |
|
|
1255 |
"1 66891 8446\n", |
|
|
1256 |
"2 7817 1474\n", |
|
|
1257 |
"3 649221 106902\n", |
|
|
1258 |
"any False True \n", |
|
|
1259 |
"pos_inc2_grp_le \n", |
|
|
1260 |
"0 28873 4410\n", |
|
|
1261 |
"1 66891 8446\n", |
|
|
1262 |
"2 7817 1474\n", |
|
|
1263 |
"3 649221 106902\n", |
|
|
1264 |
"any False True \n", |
|
|
1265 |
"pos_size_le \n", |
|
|
1266 |
"0 178368 28800\n", |
|
|
1267 |
"1 100880 14600\n", |
|
|
1268 |
"2 87984 13248\n", |
|
|
1269 |
"3 62104 9184\n", |
|
|
1270 |
"4 52394 9690\n", |
|
|
1271 |
"5 34110 6360\n", |
|
|
1272 |
"6 32585 5915\n", |
|
|
1273 |
"7 30624 5247\n", |
|
|
1274 |
"8 26866 4104\n", |
|
|
1275 |
"9 26180 3520\n", |
|
|
1276 |
"10 120707 20564\n", |
|
|
1277 |
"any False True \n", |
|
|
1278 |
"pos_zeros_le \n", |
|
|
1279 |
"0 746570 120426\n", |
|
|
1280 |
"1 1186 172\n", |
|
|
1281 |
"2 1464 72\n", |
|
|
1282 |
"3 3582 562\n", |
|
|
1283 |
"any False True \n", |
|
|
1284 |
"WindowWidth_0_le \n", |
|
|
1285 |
"0 613938 94907\n", |
|
|
1286 |
"1 64848 13244\n", |
|
|
1287 |
"2 34375 4945\n", |
|
|
1288 |
"3 32003 6636\n", |
|
|
1289 |
"4 2159 150\n", |
|
|
1290 |
"5 5479 1350\n", |
|
|
1291 |
"any False True \n", |
|
|
1292 |
"WindowWidth_1_le \n", |
|
|
1293 |
"0 332774 59892\n", |
|
|
1294 |
"1 417047 60554\n", |
|
|
1295 |
"2 2981 786\n", |
|
|
1296 |
"any False True \n", |
|
|
1297 |
"PxlMin_grp_le \n", |
|
|
1298 |
"0 300831 37140\n", |
|
|
1299 |
"1 84528 16840\n", |
|
|
1300 |
"2 367443 67252\n" |
|
|
1301 |
] |
|
|
1302 |
} |
|
|
1303 |
], |
|
|
1304 |
"source": [ |
|
|
1305 |
"for col in cols_le:\n", |
|
|
1306 |
" print(pd.crosstab(data_md[col], data_md['any'].isnull()))" |
|
|
1307 |
] |
|
|
1308 |
}, |
|
|
1309 |
{ |
|
|
1310 |
"cell_type": "code", |
|
|
1311 |
"execution_count": 68, |
|
|
1312 |
"metadata": { |
|
|
1313 |
"scrolled": true |
|
|
1314 |
}, |
|
|
1315 |
"outputs": [ |
|
|
1316 |
{ |
|
|
1317 |
"data": { |
|
|
1318 |
"text/html": [ |
|
|
1319 |
"<div>\n", |
|
|
1320 |
"<style scoped>\n", |
|
|
1321 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
1322 |
" vertical-align: middle;\n", |
|
|
1323 |
" }\n", |
|
|
1324 |
"\n", |
|
|
1325 |
" .dataframe tbody tr th {\n", |
|
|
1326 |
" vertical-align: top;\n", |
|
|
1327 |
" }\n", |
|
|
1328 |
"\n", |
|
|
1329 |
" .dataframe thead th {\n", |
|
|
1330 |
" text-align: right;\n", |
|
|
1331 |
" }\n", |
|
|
1332 |
"</style>\n", |
|
|
1333 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
1334 |
" <thead>\n", |
|
|
1335 |
" <tr style=\"text-align: right;\">\n", |
|
|
1336 |
" <th></th>\n", |
|
|
1337 |
" <th></th>\n", |
|
|
1338 |
" <th>any</th>\n", |
|
|
1339 |
" <th>False</th>\n", |
|
|
1340 |
" <th>True</th>\n", |
|
|
1341 |
" </tr>\n", |
|
|
1342 |
" <tr>\n", |
|
|
1343 |
" <th>BitsStored</th>\n", |
|
|
1344 |
" <th>PixelRepresentation</th>\n", |
|
|
1345 |
" <th>RescaleIntercept</th>\n", |
|
|
1346 |
" <th></th>\n", |
|
|
1347 |
" <th></th>\n", |
|
|
1348 |
" </tr>\n", |
|
|
1349 |
" </thead>\n", |
|
|
1350 |
" <tbody>\n", |
|
|
1351 |
" <tr>\n", |
|
|
1352 |
" <td rowspan=\"5\" valign=\"top\">12</td>\n", |
|
|
1353 |
" <td rowspan=\"4\" valign=\"top\">0</td>\n", |
|
|
1354 |
" <td>-1024.0</td>\n", |
|
|
1355 |
" <td>326639</td>\n", |
|
|
1356 |
" <td>58793</td>\n", |
|
|
1357 |
" </tr>\n", |
|
|
1358 |
" <tr>\n", |
|
|
1359 |
" <td>-1000.0</td>\n", |
|
|
1360 |
" <td>6681</td>\n", |
|
|
1361 |
" <td>1108</td>\n", |
|
|
1362 |
" </tr>\n", |
|
|
1363 |
" <tr>\n", |
|
|
1364 |
" <td>0.0</td>\n", |
|
|
1365 |
" <td>73</td>\n", |
|
|
1366 |
" <td>0</td>\n", |
|
|
1367 |
" </tr>\n", |
|
|
1368 |
" <tr>\n", |
|
|
1369 |
" <td>1.0</td>\n", |
|
|
1370 |
" <td>50</td>\n", |
|
|
1371 |
" <td>0</td>\n", |
|
|
1372 |
" </tr>\n", |
|
|
1373 |
" <tr>\n", |
|
|
1374 |
" <td>1</td>\n", |
|
|
1375 |
" <td>0.0</td>\n", |
|
|
1376 |
" <td>2312</td>\n", |
|
|
1377 |
" <td>777</td>\n", |
|
|
1378 |
" </tr>\n", |
|
|
1379 |
" <tr>\n", |
|
|
1380 |
" <td rowspan=\"2\" valign=\"top\">16</td>\n", |
|
|
1381 |
" <td rowspan=\"2\" valign=\"top\">1</td>\n", |
|
|
1382 |
" <td>-1024.0</td>\n", |
|
|
1383 |
" <td>414096</td>\n", |
|
|
1384 |
" <td>59958</td>\n", |
|
|
1385 |
" </tr>\n", |
|
|
1386 |
" <tr>\n", |
|
|
1387 |
" <td>0.0</td>\n", |
|
|
1388 |
" <td>2951</td>\n", |
|
|
1389 |
" <td>596</td>\n", |
|
|
1390 |
" </tr>\n", |
|
|
1391 |
" </tbody>\n", |
|
|
1392 |
"</table>\n", |
|
|
1393 |
"</div>" |
|
|
1394 |
], |
|
|
1395 |
"text/plain": [ |
|
|
1396 |
"any False True \n", |
|
|
1397 |
"BitsStored PixelRepresentation RescaleIntercept \n", |
|
|
1398 |
"12 0 -1024.0 326639 58793\n", |
|
|
1399 |
" -1000.0 6681 1108\n", |
|
|
1400 |
" 0.0 73 0\n", |
|
|
1401 |
" 1.0 50 0\n", |
|
|
1402 |
" 1 0.0 2312 777\n", |
|
|
1403 |
"16 1 -1024.0 414096 59958\n", |
|
|
1404 |
" 0.0 2951 596" |
|
|
1405 |
] |
|
|
1406 |
}, |
|
|
1407 |
"execution_count": 68, |
|
|
1408 |
"metadata": {}, |
|
|
1409 |
"output_type": "execute_result" |
|
|
1410 |
} |
|
|
1411 |
], |
|
|
1412 |
"source": [ |
|
|
1413 |
"pd.crosstab([data_md.BitsStored, data_md.PixelRepresentation, data_md.RescaleIntercept],\n", |
|
|
1414 |
" data_md['any'].isnull())" |
|
|
1415 |
] |
|
|
1416 |
}, |
|
|
1417 |
{ |
|
|
1418 |
"cell_type": "code", |
|
|
1419 |
"execution_count": 69, |
|
|
1420 |
"metadata": { |
|
|
1421 |
"scrolled": true |
|
|
1422 |
}, |
|
|
1423 |
"outputs": [ |
|
|
1424 |
{ |
|
|
1425 |
"data": { |
|
|
1426 |
"text/html": [ |
|
|
1427 |
"<div>\n", |
|
|
1428 |
"<style scoped>\n", |
|
|
1429 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
1430 |
" vertical-align: middle;\n", |
|
|
1431 |
" }\n", |
|
|
1432 |
"\n", |
|
|
1433 |
" .dataframe tbody tr th {\n", |
|
|
1434 |
" vertical-align: top;\n", |
|
|
1435 |
" }\n", |
|
|
1436 |
"\n", |
|
|
1437 |
" .dataframe thead th {\n", |
|
|
1438 |
" text-align: right;\n", |
|
|
1439 |
" }\n", |
|
|
1440 |
"</style>\n", |
|
|
1441 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
1442 |
" <thead>\n", |
|
|
1443 |
" <tr style=\"text-align: right;\">\n", |
|
|
1444 |
" <th>any</th>\n", |
|
|
1445 |
" <th>0</th>\n", |
|
|
1446 |
" <th>1</th>\n", |
|
|
1447 |
" </tr>\n", |
|
|
1448 |
" <tr>\n", |
|
|
1449 |
" <th>row_0</th>\n", |
|
|
1450 |
" <th></th>\n", |
|
|
1451 |
" <th></th>\n", |
|
|
1452 |
" </tr>\n", |
|
|
1453 |
" </thead>\n", |
|
|
1454 |
" <tbody>\n", |
|
|
1455 |
" <tr>\n", |
|
|
1456 |
" <td>0.0</td>\n", |
|
|
1457 |
" <td>536963</td>\n", |
|
|
1458 |
" <td>96762</td>\n", |
|
|
1459 |
" </tr>\n", |
|
|
1460 |
" <tr>\n", |
|
|
1461 |
" <td>1.0</td>\n", |
|
|
1462 |
" <td>40128</td>\n", |
|
|
1463 |
" <td>340</td>\n", |
|
|
1464 |
" </tr>\n", |
|
|
1465 |
" <tr>\n", |
|
|
1466 |
" <td>2.0</td>\n", |
|
|
1467 |
" <td>63</td>\n", |
|
|
1468 |
" <td>1</td>\n", |
|
|
1469 |
" </tr>\n", |
|
|
1470 |
" </tbody>\n", |
|
|
1471 |
"</table>\n", |
|
|
1472 |
"</div>" |
|
|
1473 |
], |
|
|
1474 |
"text/plain": [ |
|
|
1475 |
"any 0 1\n", |
|
|
1476 |
"row_0 \n", |
|
|
1477 |
"0.0 536963 96762\n", |
|
|
1478 |
"1.0 40128 340\n", |
|
|
1479 |
"2.0 63 1" |
|
|
1480 |
] |
|
|
1481 |
}, |
|
|
1482 |
"execution_count": 69, |
|
|
1483 |
"metadata": {}, |
|
|
1484 |
"output_type": "execute_result" |
|
|
1485 |
} |
|
|
1486 |
], |
|
|
1487 |
"source": [ |
|
|
1488 |
"pd.crosstab([train_md.pos_inc2_enc_0 + train_md.pos_inc1_enc_0],\n", |
|
|
1489 |
" train_md['any'])" |
|
|
1490 |
] |
|
|
1491 |
}, |
|
|
1492 |
{ |
|
|
1493 |
"cell_type": "code", |
|
|
1494 |
"execution_count": 70, |
|
|
1495 |
"metadata": { |
|
|
1496 |
"scrolled": true |
|
|
1497 |
}, |
|
|
1498 |
"outputs": [ |
|
|
1499 |
{ |
|
|
1500 |
"data": { |
|
|
1501 |
"text/plain": [ |
|
|
1502 |
"array([[ 1. , -0.09758383],\n", |
|
|
1503 |
" [-0.09758383, 1. ]])" |
|
|
1504 |
] |
|
|
1505 |
}, |
|
|
1506 |
"execution_count": 70, |
|
|
1507 |
"metadata": {}, |
|
|
1508 |
"output_type": "execute_result" |
|
|
1509 |
} |
|
|
1510 |
], |
|
|
1511 |
"source": [ |
|
|
1512 |
"np.corrcoef(train_md['any'], train_md.pos_inc2_enc_0 + train_md.pos_inc1_enc_0)" |
|
|
1513 |
] |
|
|
1514 |
}, |
|
|
1515 |
{ |
|
|
1516 |
"cell_type": "code", |
|
|
1517 |
"execution_count": 71, |
|
|
1518 |
"metadata": {}, |
|
|
1519 |
"outputs": [], |
|
|
1520 |
"source": [ |
|
|
1521 |
"bins = data_md.PxlStd.min() + np.arange(301)*(data_md.PxlStd.max() - data_md.PxlStd.min())/300" |
|
|
1522 |
] |
|
|
1523 |
}, |
|
|
1524 |
{ |
|
|
1525 |
"cell_type": "code", |
|
|
1526 |
"execution_count": 72, |
|
|
1527 |
"metadata": {}, |
|
|
1528 |
"outputs": [ |
|
|
1529 |
{ |
|
|
1530 |
"data": { |
|
|
1531 |
"image/png": "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\n", |
|
|
1532 |
"text/plain": [ |
|
|
1533 |
"<Figure size 432x288 with 1 Axes>" |
|
|
1534 |
] |
|
|
1535 |
}, |
|
|
1536 |
"metadata": { |
|
|
1537 |
"needs_background": "light" |
|
|
1538 |
}, |
|
|
1539 |
"output_type": "display_data" |
|
|
1540 |
} |
|
|
1541 |
], |
|
|
1542 |
"source": [ |
|
|
1543 |
"a = plt.hist(data_md.loc[((data_md.PixelRepresentation != 0) | (data_md.RescaleIntercept < 0)) & \n", |
|
|
1544 |
" (data_md.SOPInstanceUID != 'ID_b79eed528')].PxlStd,\n", |
|
|
1545 |
" alpha=0.5,bins=bins)\n", |
|
|
1546 |
"a = plt.hist(data_md.loc[((data_md.PixelRepresentation != 0) | (data_md.RescaleIntercept < 0)) & \n", |
|
|
1547 |
" (data_md.SOPInstanceUID != 'ID_b79eed528') & \n", |
|
|
1548 |
" (data_md.PxlMin > -1500)].PxlStd,\n", |
|
|
1549 |
" alpha=0.5,bins=bins)\n", |
|
|
1550 |
"a = plt.hist(data_md.loc[((data_md.PixelRepresentation != 0) | (data_md.RescaleIntercept < 0)) & \n", |
|
|
1551 |
" (data_md.SOPInstanceUID != 'ID_b79eed528') & \n", |
|
|
1552 |
" (data_md.PxlMin < -2500)].PxlStd,\n", |
|
|
1553 |
" alpha=0.5,bins=bins)\n", |
|
|
1554 |
"a = plt.hist(data_md.loc[((data_md.PixelRepresentation != 0) | (data_md.RescaleIntercept < 0)) & \n", |
|
|
1555 |
" (data_md.SOPInstanceUID != 'ID_b79eed528') & \n", |
|
|
1556 |
" (data_md.PxlMin.between(-2500,-1500))].PxlStd,\n", |
|
|
1557 |
" alpha=0.5,bins=bins)" |
|
|
1558 |
] |
|
|
1559 |
}, |
|
|
1560 |
{ |
|
|
1561 |
"cell_type": "code", |
|
|
1562 |
"execution_count": 73, |
|
|
1563 |
"metadata": {}, |
|
|
1564 |
"outputs": [ |
|
|
1565 |
{ |
|
|
1566 |
"data": { |
|
|
1567 |
"text/plain": [ |
|
|
1568 |
"False 133\n", |
|
|
1569 |
"True 17\n", |
|
|
1570 |
"Name: any, dtype: int64" |
|
|
1571 |
] |
|
|
1572 |
}, |
|
|
1573 |
"execution_count": 73, |
|
|
1574 |
"metadata": {}, |
|
|
1575 |
"output_type": "execute_result" |
|
|
1576 |
} |
|
|
1577 |
], |
|
|
1578 |
"source": [ |
|
|
1579 |
"data_md.loc[data_md.PxlMin < -3450,'any'].isnull().value_counts()" |
|
|
1580 |
] |
|
|
1581 |
}, |
|
|
1582 |
{ |
|
|
1583 |
"cell_type": "code", |
|
|
1584 |
"execution_count": 74, |
|
|
1585 |
"metadata": {}, |
|
|
1586 |
"outputs": [], |
|
|
1587 |
"source": [ |
|
|
1588 |
"train_md.PxlMin_grp_le = train_md.PxlMin_grp_le.astype(int)" |
|
|
1589 |
] |
|
|
1590 |
}, |
|
|
1591 |
{ |
|
|
1592 |
"cell_type": "code", |
|
|
1593 |
"execution_count": 75, |
|
|
1594 |
"metadata": {}, |
|
|
1595 |
"outputs": [], |
|
|
1596 |
"source": [ |
|
|
1597 |
"tt = train_md[['any','SeriesInstanceUID','PxlMin_grp_le']].groupby('SeriesInstanceUID').mean()" |
|
|
1598 |
] |
|
|
1599 |
}, |
|
|
1600 |
{ |
|
|
1601 |
"cell_type": "code", |
|
|
1602 |
"execution_count": 76, |
|
|
1603 |
"metadata": {}, |
|
|
1604 |
"outputs": [ |
|
|
1605 |
{ |
|
|
1606 |
"data": { |
|
|
1607 |
"image/png": "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\n", |
|
|
1608 |
"text/plain": [ |
|
|
1609 |
"<Figure size 432x288 with 1 Axes>" |
|
|
1610 |
] |
|
|
1611 |
}, |
|
|
1612 |
"metadata": { |
|
|
1613 |
"needs_background": "light" |
|
|
1614 |
}, |
|
|
1615 |
"output_type": "display_data" |
|
|
1616 |
} |
|
|
1617 |
], |
|
|
1618 |
"source": [ |
|
|
1619 |
"a = plt.hist(tt.loc[(tt.PxlMin_grp_le == 0) & (tt['any'] > 0), 'any'], bins=30, alpha=0.5)\n", |
|
|
1620 |
"a = plt.hist(tt.loc[(tt.PxlMin_grp_le == 1) & (tt['any'] > 0), 'any'], bins=30, alpha=0.5)\n", |
|
|
1621 |
"a = plt.hist(tt.loc[(tt.PxlMin_grp_le == 2) & (tt['any'] > 0), 'any'], bins=30, alpha=0.5)" |
|
|
1622 |
] |
|
|
1623 |
}, |
|
|
1624 |
{ |
|
|
1625 |
"cell_type": "code", |
|
|
1626 |
"execution_count": null, |
|
|
1627 |
"metadata": {}, |
|
|
1628 |
"outputs": [], |
|
|
1629 |
"source": [] |
|
|
1630 |
}, |
|
|
1631 |
{ |
|
|
1632 |
"cell_type": "code", |
|
|
1633 |
"execution_count": null, |
|
|
1634 |
"metadata": {}, |
|
|
1635 |
"outputs": [], |
|
|
1636 |
"source": [] |
|
|
1637 |
}, |
|
|
1638 |
{ |
|
|
1639 |
"cell_type": "markdown", |
|
|
1640 |
"metadata": {}, |
|
|
1641 |
"source": [ |
|
|
1642 |
"# Weighting" |
|
|
1643 |
] |
|
|
1644 |
}, |
|
|
1645 |
{ |
|
|
1646 |
"cell_type": "code", |
|
|
1647 |
"execution_count": 149, |
|
|
1648 |
"metadata": {}, |
|
|
1649 |
"outputs": [], |
|
|
1650 |
"source": [ |
|
|
1651 |
"train_md = pd.concat([train_md, test_md], axis=0, sort=False).reset_index(drop=True)" |
|
|
1652 |
] |
|
|
1653 |
}, |
|
|
1654 |
{ |
|
|
1655 |
"cell_type": "code", |
|
|
1656 |
"execution_count": 150, |
|
|
1657 |
"metadata": {}, |
|
|
1658 |
"outputs": [], |
|
|
1659 |
"source": [ |
|
|
1660 |
"weights = np.ones(len(train_md))" |
|
|
1661 |
] |
|
|
1662 |
}, |
|
|
1663 |
{ |
|
|
1664 |
"cell_type": "code", |
|
|
1665 |
"execution_count": null, |
|
|
1666 |
"metadata": {}, |
|
|
1667 |
"outputs": [], |
|
|
1668 |
"source": [] |
|
|
1669 |
}, |
|
|
1670 |
{ |
|
|
1671 |
"cell_type": "code", |
|
|
1672 |
"execution_count": 79, |
|
|
1673 |
"metadata": {}, |
|
|
1674 |
"outputs": [], |
|
|
1675 |
"source": [ |
|
|
1676 |
"# remove categories which are empty for test" |
|
|
1677 |
] |
|
|
1678 |
}, |
|
|
1679 |
{ |
|
|
1680 |
"cell_type": "code", |
|
|
1681 |
"execution_count": 151, |
|
|
1682 |
"metadata": {}, |
|
|
1683 |
"outputs": [], |
|
|
1684 |
"source": [ |
|
|
1685 |
"for col in (cols_le + cols_bool):\n", |
|
|
1686 |
" tt = data_md[[col,'test2']].groupby(col).sum()\n", |
|
|
1687 |
" empty_categories = tt.index.values[tt['test2']==0]\n", |
|
|
1688 |
" if len(empty_categories) > 0:\n", |
|
|
1689 |
" print(col, empty_categories, train_md[col].isin(empty_categories).sum())\n", |
|
|
1690 |
" weights[train_md[col].isin(empty_categories)] = 0" |
|
|
1691 |
] |
|
|
1692 |
}, |
|
|
1693 |
{ |
|
|
1694 |
"cell_type": "code", |
|
|
1695 |
"execution_count": 152, |
|
|
1696 |
"metadata": {}, |
|
|
1697 |
"outputs": [ |
|
|
1698 |
{ |
|
|
1699 |
"data": { |
|
|
1700 |
"text/plain": [ |
|
|
1701 |
"1.0 752802\n", |
|
|
1702 |
"dtype: int64" |
|
|
1703 |
] |
|
|
1704 |
}, |
|
|
1705 |
"execution_count": 152, |
|
|
1706 |
"metadata": {}, |
|
|
1707 |
"output_type": "execute_result" |
|
|
1708 |
} |
|
|
1709 |
], |
|
|
1710 |
"source": [ |
|
|
1711 |
"pd.value_counts(weights)" |
|
|
1712 |
] |
|
|
1713 |
}, |
|
|
1714 |
{ |
|
|
1715 |
"cell_type": "code", |
|
|
1716 |
"execution_count": null, |
|
|
1717 |
"metadata": {}, |
|
|
1718 |
"outputs": [], |
|
|
1719 |
"source": [] |
|
|
1720 |
}, |
|
|
1721 |
{ |
|
|
1722 |
"cell_type": "code", |
|
|
1723 |
"execution_count": 153, |
|
|
1724 |
"metadata": {}, |
|
|
1725 |
"outputs": [], |
|
|
1726 |
"source": [ |
|
|
1727 |
"# remove broken intercept values" |
|
|
1728 |
] |
|
|
1729 |
}, |
|
|
1730 |
{ |
|
|
1731 |
"cell_type": "code", |
|
|
1732 |
"execution_count": 154, |
|
|
1733 |
"metadata": {}, |
|
|
1734 |
"outputs": [], |
|
|
1735 |
"source": [ |
|
|
1736 |
"if ((test2_md.PixelRepresentation == 0) & (test2_md.RescaleIntercept >= 0)).sum() == 0:\n", |
|
|
1737 |
" weights[(train_md.PixelRepresentation == 0) & (train_md.RescaleIntercept >= 0)] = 0" |
|
|
1738 |
] |
|
|
1739 |
}, |
|
|
1740 |
{ |
|
|
1741 |
"cell_type": "code", |
|
|
1742 |
"execution_count": 155, |
|
|
1743 |
"metadata": {}, |
|
|
1744 |
"outputs": [ |
|
|
1745 |
{ |
|
|
1746 |
"data": { |
|
|
1747 |
"text/plain": [ |
|
|
1748 |
"1.0 752679\n", |
|
|
1749 |
"0.0 123\n", |
|
|
1750 |
"dtype: int64" |
|
|
1751 |
] |
|
|
1752 |
}, |
|
|
1753 |
"execution_count": 155, |
|
|
1754 |
"metadata": {}, |
|
|
1755 |
"output_type": "execute_result" |
|
|
1756 |
} |
|
|
1757 |
], |
|
|
1758 |
"source": [ |
|
|
1759 |
"pd.value_counts(weights)" |
|
|
1760 |
] |
|
|
1761 |
}, |
|
|
1762 |
{ |
|
|
1763 |
"cell_type": "code", |
|
|
1764 |
"execution_count": null, |
|
|
1765 |
"metadata": {}, |
|
|
1766 |
"outputs": [], |
|
|
1767 |
"source": [] |
|
|
1768 |
}, |
|
|
1769 |
{ |
|
|
1770 |
"cell_type": "code", |
|
|
1771 |
"execution_count": null, |
|
|
1772 |
"metadata": {}, |
|
|
1773 |
"outputs": [], |
|
|
1774 |
"source": [] |
|
|
1775 |
}, |
|
|
1776 |
{ |
|
|
1777 |
"cell_type": "code", |
|
|
1778 |
"execution_count": 156, |
|
|
1779 |
"metadata": {}, |
|
|
1780 |
"outputs": [], |
|
|
1781 |
"source": [ |
|
|
1782 |
"# remove outlier image" |
|
|
1783 |
] |
|
|
1784 |
}, |
|
|
1785 |
{ |
|
|
1786 |
"cell_type": "code", |
|
|
1787 |
"execution_count": 157, |
|
|
1788 |
"metadata": {}, |
|
|
1789 |
"outputs": [], |
|
|
1790 |
"source": [ |
|
|
1791 |
"weights[train_md.SOPInstanceUID == 'ID_b79eed528'] = 0" |
|
|
1792 |
] |
|
|
1793 |
}, |
|
|
1794 |
{ |
|
|
1795 |
"cell_type": "code", |
|
|
1796 |
"execution_count": 158, |
|
|
1797 |
"metadata": {}, |
|
|
1798 |
"outputs": [ |
|
|
1799 |
{ |
|
|
1800 |
"data": { |
|
|
1801 |
"text/plain": [ |
|
|
1802 |
"1.0 752678\n", |
|
|
1803 |
"0.0 124\n", |
|
|
1804 |
"dtype: int64" |
|
|
1805 |
] |
|
|
1806 |
}, |
|
|
1807 |
"execution_count": 158, |
|
|
1808 |
"metadata": {}, |
|
|
1809 |
"output_type": "execute_result" |
|
|
1810 |
} |
|
|
1811 |
], |
|
|
1812 |
"source": [ |
|
|
1813 |
"pd.value_counts(weights)" |
|
|
1814 |
] |
|
|
1815 |
}, |
|
|
1816 |
{ |
|
|
1817 |
"cell_type": "code", |
|
|
1818 |
"execution_count": null, |
|
|
1819 |
"metadata": {}, |
|
|
1820 |
"outputs": [], |
|
|
1821 |
"source": [] |
|
|
1822 |
}, |
|
|
1823 |
{ |
|
|
1824 |
"cell_type": "code", |
|
|
1825 |
"execution_count": 159, |
|
|
1826 |
"metadata": {}, |
|
|
1827 |
"outputs": [], |
|
|
1828 |
"source": [ |
|
|
1829 |
"# scale weight according to (PxlMin_grp_le == 0) frequency" |
|
|
1830 |
] |
|
|
1831 |
}, |
|
|
1832 |
{ |
|
|
1833 |
"cell_type": "code", |
|
|
1834 |
"execution_count": 160, |
|
|
1835 |
"metadata": {}, |
|
|
1836 |
"outputs": [], |
|
|
1837 |
"source": [ |
|
|
1838 |
"data_md['weights'] = np.nan\n", |
|
|
1839 |
"data_md.loc[~data_md.test2, 'weights'] = weights" |
|
|
1840 |
] |
|
|
1841 |
}, |
|
|
1842 |
{ |
|
|
1843 |
"cell_type": "code", |
|
|
1844 |
"execution_count": 161, |
|
|
1845 |
"metadata": {}, |
|
|
1846 |
"outputs": [], |
|
|
1847 |
"source": [ |
|
|
1848 |
"data_filt = data_md.loc[data_md.weights.fillna(-1) != 0]" |
|
|
1849 |
] |
|
|
1850 |
}, |
|
|
1851 |
{ |
|
|
1852 |
"cell_type": "code", |
|
|
1853 |
"execution_count": 162, |
|
|
1854 |
"metadata": {}, |
|
|
1855 |
"outputs": [], |
|
|
1856 |
"source": [ |
|
|
1857 |
"tt = pd.crosstab(data_filt.PxlMin_grp_le == 0, data_filt.test2)" |
|
|
1858 |
] |
|
|
1859 |
}, |
|
|
1860 |
{ |
|
|
1861 |
"cell_type": "code", |
|
|
1862 |
"execution_count": 163, |
|
|
1863 |
"metadata": {}, |
|
|
1864 |
"outputs": [], |
|
|
1865 |
"source": [ |
|
|
1866 |
"ww = tt.loc[False,True] * tt.loc[True,False] / (tt.loc[True,True] * tt.loc[False,False])" |
|
|
1867 |
] |
|
|
1868 |
}, |
|
|
1869 |
{ |
|
|
1870 |
"cell_type": "code", |
|
|
1871 |
"execution_count": 164, |
|
|
1872 |
"metadata": {}, |
|
|
1873 |
"outputs": [], |
|
|
1874 |
"source": [ |
|
|
1875 |
"weights[(train_md.PxlMin_grp_le != 0) & (weights > 0)] = ww" |
|
|
1876 |
] |
|
|
1877 |
}, |
|
|
1878 |
{ |
|
|
1879 |
"cell_type": "code", |
|
|
1880 |
"execution_count": 165, |
|
|
1881 |
"metadata": {}, |
|
|
1882 |
"outputs": [ |
|
|
1883 |
{ |
|
|
1884 |
"data": { |
|
|
1885 |
"text/plain": [ |
|
|
1886 |
"1.50692 451848\n", |
|
|
1887 |
"1.00000 300830\n", |
|
|
1888 |
"0.00000 124\n", |
|
|
1889 |
"dtype: int64" |
|
|
1890 |
] |
|
|
1891 |
}, |
|
|
1892 |
"execution_count": 165, |
|
|
1893 |
"metadata": {}, |
|
|
1894 |
"output_type": "execute_result" |
|
|
1895 |
} |
|
|
1896 |
], |
|
|
1897 |
"source": [ |
|
|
1898 |
"pd.value_counts(weights)" |
|
|
1899 |
] |
|
|
1900 |
}, |
|
|
1901 |
{ |
|
|
1902 |
"cell_type": "code", |
|
|
1903 |
"execution_count": 166, |
|
|
1904 |
"metadata": {}, |
|
|
1905 |
"outputs": [], |
|
|
1906 |
"source": [ |
|
|
1907 |
"train_md['weights'] = weights" |
|
|
1908 |
] |
|
|
1909 |
}, |
|
|
1910 |
{ |
|
|
1911 |
"cell_type": "code", |
|
|
1912 |
"execution_count": null, |
|
|
1913 |
"metadata": {}, |
|
|
1914 |
"outputs": [], |
|
|
1915 |
"source": [] |
|
|
1916 |
}, |
|
|
1917 |
{ |
|
|
1918 |
"cell_type": "code", |
|
|
1919 |
"execution_count": 167, |
|
|
1920 |
"metadata": {}, |
|
|
1921 |
"outputs": [], |
|
|
1922 |
"source": [ |
|
|
1923 |
"# For each of two groups (PxlMin_grp_le == 0) bring expected 'any' to equality" |
|
|
1924 |
] |
|
|
1925 |
}, |
|
|
1926 |
{ |
|
|
1927 |
"cell_type": "code", |
|
|
1928 |
"execution_count": 168, |
|
|
1929 |
"metadata": {}, |
|
|
1930 |
"outputs": [], |
|
|
1931 |
"source": [ |
|
|
1932 |
"yuval_test = pickle.load(open(PATH_DISK/'yuval/OOF_stage2/ensemble_test_image_ids_stage2.pkl','rb'))\n", |
|
|
1933 |
"assert len(yuval_test) == len(test2_md)" |
|
|
1934 |
] |
|
|
1935 |
}, |
|
|
1936 |
{ |
|
|
1937 |
"cell_type": "code", |
|
|
1938 |
"execution_count": 169, |
|
|
1939 |
"metadata": {}, |
|
|
1940 |
"outputs": [], |
|
|
1941 |
"source": [ |
|
|
1942 |
"test2_md['img_id'] = test2_md.SOPInstanceUID.str.split('_').apply(lambda x: x[1])" |
|
|
1943 |
] |
|
|
1944 |
}, |
|
|
1945 |
{ |
|
|
1946 |
"cell_type": "code", |
|
|
1947 |
"execution_count": 170, |
|
|
1948 |
"metadata": {}, |
|
|
1949 |
"outputs": [], |
|
|
1950 |
"source": [ |
|
|
1951 |
"#del test2_md['yuval_idx']" |
|
|
1952 |
] |
|
|
1953 |
}, |
|
|
1954 |
{ |
|
|
1955 |
"cell_type": "code", |
|
|
1956 |
"execution_count": 171, |
|
|
1957 |
"metadata": {}, |
|
|
1958 |
"outputs": [], |
|
|
1959 |
"source": [ |
|
|
1960 |
"df = pd.DataFrame(np.arange(len(yuval_test)), columns=['yuval_idx'])\n", |
|
|
1961 |
"df.index = yuval_test\n", |
|
|
1962 |
"test2_md = test2_md.join(df, on = 'img_id')" |
|
|
1963 |
] |
|
|
1964 |
}, |
|
|
1965 |
{ |
|
|
1966 |
"cell_type": "code", |
|
|
1967 |
"execution_count": null, |
|
|
1968 |
"metadata": {}, |
|
|
1969 |
"outputs": [], |
|
|
1970 |
"source": [] |
|
|
1971 |
}, |
|
|
1972 |
{ |
|
|
1973 |
"cell_type": "code", |
|
|
1974 |
"execution_count": 172, |
|
|
1975 |
"metadata": {}, |
|
|
1976 |
"outputs": [], |
|
|
1977 |
"source": [ |
|
|
1978 |
"names_y = [\n", |
|
|
1979 |
" 'model_se_resnet101_version_new_splits_fullhead_resmodel_pool2_stage2_3_type_test_pred_ensemble_split_{}.pkl',\n", |
|
|
1980 |
" 'model_se_resnext101_32x4d_version_new_splits_fullhead_resmodel_pool2_stage2_3_type_test_pred_ensemble_split_0.pkl'\n", |
|
|
1981 |
" ]" |
|
|
1982 |
] |
|
|
1983 |
}, |
|
|
1984 |
{ |
|
|
1985 |
"cell_type": "code", |
|
|
1986 |
"execution_count": 173, |
|
|
1987 |
"metadata": {}, |
|
|
1988 |
"outputs": [], |
|
|
1989 |
"source": [ |
|
|
1990 |
"preds_y = np.stack([torch.sigmoid(torch.stack([torch.stack(pickle.load(\n", |
|
|
1991 |
" open(PATH_DISK/'yuval/OOF_stage2'/name.format(fold),'rb'))) for fold in range(3)])).numpy() for name in names_y])" |
|
|
1992 |
] |
|
|
1993 |
}, |
|
|
1994 |
{ |
|
|
1995 |
"cell_type": "code", |
|
|
1996 |
"execution_count": 174, |
|
|
1997 |
"metadata": {}, |
|
|
1998 |
"outputs": [], |
|
|
1999 |
"source": [ |
|
|
2000 |
"preds_y = preds_y[:,:,:,test2_md.yuval_idx]\n", |
|
|
2001 |
"preds_y = preds_y[:,:,:,:,np.array([5,0,1,2,3,4])]\n", |
|
|
2002 |
"preds_y = preds_y.mean((0,1,2))" |
|
|
2003 |
] |
|
|
2004 |
}, |
|
|
2005 |
{ |
|
|
2006 |
"cell_type": "code", |
|
|
2007 |
"execution_count": 175, |
|
|
2008 |
"metadata": {}, |
|
|
2009 |
"outputs": [], |
|
|
2010 |
"source": [ |
|
|
2011 |
"#np.corrcoef(test2_md[all_ich].values.reshape(-1), preds_y.reshape(-1))" |
|
|
2012 |
] |
|
|
2013 |
}, |
|
|
2014 |
{ |
|
|
2015 |
"cell_type": "code", |
|
|
2016 |
"execution_count": 177, |
|
|
2017 |
"metadata": {}, |
|
|
2018 |
"outputs": [], |
|
|
2019 |
"source": [ |
|
|
2020 |
"test2_md[all_ich] = preds_y\n", |
|
|
2021 |
"test2_md['weights'] = 1" |
|
|
2022 |
] |
|
|
2023 |
}, |
|
|
2024 |
{ |
|
|
2025 |
"cell_type": "code", |
|
|
2026 |
"execution_count": 178, |
|
|
2027 |
"metadata": { |
|
|
2028 |
"scrolled": true |
|
|
2029 |
}, |
|
|
2030 |
"outputs": [ |
|
|
2031 |
{ |
|
|
2032 |
"data": { |
|
|
2033 |
"text/html": [ |
|
|
2034 |
"<div>\n", |
|
|
2035 |
"<style scoped>\n", |
|
|
2036 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
2037 |
" vertical-align: middle;\n", |
|
|
2038 |
" }\n", |
|
|
2039 |
"\n", |
|
|
2040 |
" .dataframe tbody tr th {\n", |
|
|
2041 |
" vertical-align: top;\n", |
|
|
2042 |
" }\n", |
|
|
2043 |
"\n", |
|
|
2044 |
" .dataframe thead th {\n", |
|
|
2045 |
" text-align: right;\n", |
|
|
2046 |
" }\n", |
|
|
2047 |
"</style>\n", |
|
|
2048 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
2049 |
" <thead>\n", |
|
|
2050 |
" <tr style=\"text-align: right;\">\n", |
|
|
2051 |
" <th></th>\n", |
|
|
2052 |
" <th></th>\n", |
|
|
2053 |
" <th>any</th>\n", |
|
|
2054 |
" </tr>\n", |
|
|
2055 |
" <tr>\n", |
|
|
2056 |
" <th>test2</th>\n", |
|
|
2057 |
" <th>PxlMin_zero</th>\n", |
|
|
2058 |
" <th></th>\n", |
|
|
2059 |
" </tr>\n", |
|
|
2060 |
" </thead>\n", |
|
|
2061 |
" <tbody>\n", |
|
|
2062 |
" <tr>\n", |
|
|
2063 |
" <td rowspan=\"2\" valign=\"top\">False</td>\n", |
|
|
2064 |
" <td>False</td>\n", |
|
|
2065 |
" <td>0.185841</td>\n", |
|
|
2066 |
" </tr>\n", |
|
|
2067 |
" <tr>\n", |
|
|
2068 |
" <td>True</td>\n", |
|
|
2069 |
" <td>0.079528</td>\n", |
|
|
2070 |
" </tr>\n", |
|
|
2071 |
" <tr>\n", |
|
|
2072 |
" <td rowspan=\"2\" valign=\"top\">True</td>\n", |
|
|
2073 |
" <td>False</td>\n", |
|
|
2074 |
" <td>0.178803</td>\n", |
|
|
2075 |
" </tr>\n", |
|
|
2076 |
" <tr>\n", |
|
|
2077 |
" <td>True</td>\n", |
|
|
2078 |
" <td>0.046352</td>\n", |
|
|
2079 |
" </tr>\n", |
|
|
2080 |
" </tbody>\n", |
|
|
2081 |
"</table>\n", |
|
|
2082 |
"</div>" |
|
|
2083 |
], |
|
|
2084 |
"text/plain": [ |
|
|
2085 |
" any\n", |
|
|
2086 |
"test2 PxlMin_zero \n", |
|
|
2087 |
"False False 0.185841\n", |
|
|
2088 |
" True 0.079528\n", |
|
|
2089 |
"True False 0.178803\n", |
|
|
2090 |
" True 0.046352" |
|
|
2091 |
] |
|
|
2092 |
}, |
|
|
2093 |
"execution_count": 178, |
|
|
2094 |
"metadata": {}, |
|
|
2095 |
"output_type": "execute_result" |
|
|
2096 |
} |
|
|
2097 |
], |
|
|
2098 |
"source": [ |
|
|
2099 |
"dd = pd.concat([train_md,test2_md],axis=0,sort=False)\n", |
|
|
2100 |
"dd[['any','test2','PxlMin_zero']].groupby(['test2','PxlMin_zero']).mean()" |
|
|
2101 |
] |
|
|
2102 |
}, |
|
|
2103 |
{ |
|
|
2104 |
"cell_type": "code", |
|
|
2105 |
"execution_count": 179, |
|
|
2106 |
"metadata": { |
|
|
2107 |
"scrolled": true |
|
|
2108 |
}, |
|
|
2109 |
"outputs": [ |
|
|
2110 |
{ |
|
|
2111 |
"data": { |
|
|
2112 |
"text/html": [ |
|
|
2113 |
"<div>\n", |
|
|
2114 |
"<style scoped>\n", |
|
|
2115 |
" .dataframe tbody tr th:only-of-type {\n", |
|
|
2116 |
" vertical-align: middle;\n", |
|
|
2117 |
" }\n", |
|
|
2118 |
"\n", |
|
|
2119 |
" .dataframe tbody tr th {\n", |
|
|
2120 |
" vertical-align: top;\n", |
|
|
2121 |
" }\n", |
|
|
2122 |
"\n", |
|
|
2123 |
" .dataframe thead th {\n", |
|
|
2124 |
" text-align: right;\n", |
|
|
2125 |
" }\n", |
|
|
2126 |
"</style>\n", |
|
|
2127 |
"<table border=\"1\" class=\"dataframe\">\n", |
|
|
2128 |
" <thead>\n", |
|
|
2129 |
" <tr style=\"text-align: right;\">\n", |
|
|
2130 |
" <th></th>\n", |
|
|
2131 |
" <th></th>\n", |
|
|
2132 |
" <th></th>\n", |
|
|
2133 |
" <th>any</th>\n", |
|
|
2134 |
" </tr>\n", |
|
|
2135 |
" <tr>\n", |
|
|
2136 |
" <th>test2</th>\n", |
|
|
2137 |
" <th>PxlMin_zero</th>\n", |
|
|
2138 |
" <th>any_series</th>\n", |
|
|
2139 |
" <th></th>\n", |
|
|
2140 |
" </tr>\n", |
|
|
2141 |
" </thead>\n", |
|
|
2142 |
" <tbody>\n", |
|
|
2143 |
" <tr>\n", |
|
|
2144 |
" <td rowspan=\"4\" valign=\"top\">False</td>\n", |
|
|
2145 |
" <td rowspan=\"2\" valign=\"top\">False</td>\n", |
|
|
2146 |
" <td>False</td>\n", |
|
|
2147 |
" <td>0.000000</td>\n", |
|
|
2148 |
" </tr>\n", |
|
|
2149 |
" <tr>\n", |
|
|
2150 |
" <td>True</td>\n", |
|
|
2151 |
" <td>0.364297</td>\n", |
|
|
2152 |
" </tr>\n", |
|
|
2153 |
" <tr>\n", |
|
|
2154 |
" <td rowspan=\"2\" valign=\"top\">True</td>\n", |
|
|
2155 |
" <td>False</td>\n", |
|
|
2156 |
" <td>0.000000</td>\n", |
|
|
2157 |
" </tr>\n", |
|
|
2158 |
" <tr>\n", |
|
|
2159 |
" <td>True</td>\n", |
|
|
2160 |
" <td>0.340166</td>\n", |
|
|
2161 |
" </tr>\n", |
|
|
2162 |
" <tr>\n", |
|
|
2163 |
" <td rowspan=\"2\" valign=\"top\">True</td>\n", |
|
|
2164 |
" <td>False</td>\n", |
|
|
2165 |
" <td>False</td>\n", |
|
|
2166 |
" <td>0.178803</td>\n", |
|
|
2167 |
" </tr>\n", |
|
|
2168 |
" <tr>\n", |
|
|
2169 |
" <td>True</td>\n", |
|
|
2170 |
" <td>False</td>\n", |
|
|
2171 |
" <td>0.046352</td>\n", |
|
|
2172 |
" </tr>\n", |
|
|
2173 |
" </tbody>\n", |
|
|
2174 |
"</table>\n", |
|
|
2175 |
"</div>" |
|
|
2176 |
], |
|
|
2177 |
"text/plain": [ |
|
|
2178 |
" any\n", |
|
|
2179 |
"test2 PxlMin_zero any_series \n", |
|
|
2180 |
"False False False 0.000000\n", |
|
|
2181 |
" True 0.364297\n", |
|
|
2182 |
" True False 0.000000\n", |
|
|
2183 |
" True 0.340166\n", |
|
|
2184 |
"True False False 0.178803\n", |
|
|
2185 |
" True False 0.046352" |
|
|
2186 |
] |
|
|
2187 |
}, |
|
|
2188 |
"execution_count": 179, |
|
|
2189 |
"metadata": {}, |
|
|
2190 |
"output_type": "execute_result" |
|
|
2191 |
} |
|
|
2192 |
], |
|
|
2193 |
"source": [ |
|
|
2194 |
"dd[['any','test2','PxlMin_zero','any_series']].groupby(['test2','PxlMin_zero','any_series']).mean()" |
|
|
2195 |
] |
|
|
2196 |
}, |
|
|
2197 |
{ |
|
|
2198 |
"cell_type": "code", |
|
|
2199 |
"execution_count": 180, |
|
|
2200 |
"metadata": {}, |
|
|
2201 |
"outputs": [ |
|
|
2202 |
{ |
|
|
2203 |
"name": "stdout", |
|
|
2204 |
"output_type": "stream", |
|
|
2205 |
"text": [ |
|
|
2206 |
"val: True w1: 230399.0 w2: 70301.0 s2: 0.3401658582381474 s_test: 0.04635240370406172 multiplier: 1.9341062664506588\n", |
|
|
2207 |
"val: False w1: 333664.6231658301 w2: 347363.9402054581 s2: 0.3642973902260301 s_test: 0.17880255612905446 multiplier: 1.0800221579769513\n" |
|
|
2208 |
] |
|
|
2209 |
} |
|
|
2210 |
], |
|
|
2211 |
"source": [ |
|
|
2212 |
"for val in train_md.PxlMin_zero.unique():\n", |
|
|
2213 |
" w1 = train_md.loc[(train_md.PxlMin_zero == val) & (train_md.any_series == False),'weights'].sum()\n", |
|
|
2214 |
" w2 = train_md.loc[(train_md.PxlMin_zero == val) & (train_md.any_series == True),'weights'].sum()\n", |
|
|
2215 |
" s2 = train_md.loc[(train_md.PxlMin_zero == val) & (train_md.any_series == True),'any'].mean()\n", |
|
|
2216 |
" s_test = test2_md.loc[(test2_md.PxlMin_zero == val),'any'].mean()\n", |
|
|
2217 |
" \n", |
|
|
2218 |
" multiplier = (s2/s_test-1)*w2/w1\n", |
|
|
2219 |
" if multiplier < 0: multiplier = 0\n", |
|
|
2220 |
" ww_mean = train_md.loc[train_md.PxlMin_zero == val,'weights'].mean()\n", |
|
|
2221 |
" train_md.loc[(train_md.PxlMin_zero == val) & (train_md.any_series == False),'weights'] *= multiplier\n", |
|
|
2222 |
" train_md.loc[train_md.PxlMin_zero == val,'weights'] *= \\\n", |
|
|
2223 |
" ww_mean/train_md.loc[train_md.PxlMin_zero == val,'weights'].mean()\n", |
|
|
2224 |
" \n", |
|
|
2225 |
" print('val:',val,'w1:',w1,'w2:',w2,'s2:',s2,'s_test:',s_test,'multiplier:',multiplier)" |
|
|
2226 |
] |
|
|
2227 |
}, |
|
|
2228 |
{ |
|
|
2229 |
"cell_type": "code", |
|
|
2230 |
"execution_count": 181, |
|
|
2231 |
"metadata": {}, |
|
|
2232 |
"outputs": [ |
|
|
2233 |
{ |
|
|
2234 |
"name": "stdout", |
|
|
2235 |
"output_type": "stream", |
|
|
2236 |
"text": [ |
|
|
2237 |
"0.30629647666159543\n", |
|
|
2238 |
"0.306214530816946\n", |
|
|
2239 |
"val True train avg 0.046352403704061705\n", |
|
|
2240 |
"val True test avg 0.04635240370406171\n", |
|
|
2241 |
"val False train avg 0.1787649723372748\n", |
|
|
2242 |
"val False test avg 0.17880255612905444\n" |
|
|
2243 |
] |
|
|
2244 |
} |
|
|
2245 |
], |
|
|
2246 |
"source": [ |
|
|
2247 |
"print(np.average(train_md.PxlMin_zero.values, weights=train_md.weights.values))\n", |
|
|
2248 |
"print(np.average(test2_md.PxlMin_zero.values, weights=test2_md.weights.values))\n", |
|
|
2249 |
"\n", |
|
|
2250 |
"for val in train_md.PxlMin_zero.unique():\n", |
|
|
2251 |
" print('val',val,'train avg',np.average(train_md.loc[train_md.PxlMin_zero == val, 'any'].values, \n", |
|
|
2252 |
" weights=train_md.loc[train_md.PxlMin_zero == val, 'weights'].values))\n", |
|
|
2253 |
" print('val',val,'test avg',np.average(test2_md.loc[test2_md.PxlMin_zero == val, 'any'].values, \n", |
|
|
2254 |
" weights=test2_md.loc[test2_md.PxlMin_zero == val, 'weights'].values))" |
|
|
2255 |
] |
|
|
2256 |
}, |
|
|
2257 |
{ |
|
|
2258 |
"cell_type": "code", |
|
|
2259 |
"execution_count": 182, |
|
|
2260 |
"metadata": {}, |
|
|
2261 |
"outputs": [], |
|
|
2262 |
"source": [ |
|
|
2263 |
"train_md.weights /= train_md.weights.mean()" |
|
|
2264 |
] |
|
|
2265 |
}, |
|
|
2266 |
{ |
|
|
2267 |
"cell_type": "raw", |
|
|
2268 |
"metadata": {}, |
|
|
2269 |
"source": [ |
|
|
2270 |
"# stage 1 weights\n", |
|
|
2271 |
"\n", |
|
|
2272 |
"0.187007 220682\n", |
|
|
2273 |
"0.016056 217939\n", |
|
|
2274 |
"2.233320 183128\n", |
|
|
2275 |
"5.343628 41265\n", |
|
|
2276 |
"0.000000 11242\n", |
|
|
2277 |
"0.458805 1\n", |
|
|
2278 |
"\n", |
|
|
2279 |
"# stage 2 weights\n", |
|
|
2280 |
"\n", |
|
|
2281 |
"1.111931 230427\n", |
|
|
2282 |
"0.864417 230399\n", |
|
|
2283 |
"1.200910 221421\n", |
|
|
2284 |
"0.446933 70301\n", |
|
|
2285 |
"0.737883 129\n", |
|
|
2286 |
"0.000000 124\n", |
|
|
2287 |
"0.796930 1" |
|
|
2288 |
] |
|
|
2289 |
}, |
|
|
2290 |
{ |
|
|
2291 |
"cell_type": "code", |
|
|
2292 |
"execution_count": 183, |
|
|
2293 |
"metadata": {}, |
|
|
2294 |
"outputs": [ |
|
|
2295 |
{ |
|
|
2296 |
"data": { |
|
|
2297 |
"text/plain": [ |
|
|
2298 |
"1.111931 230427\n", |
|
|
2299 |
"0.864417 230399\n", |
|
|
2300 |
"1.200910 221421\n", |
|
|
2301 |
"0.446933 70301\n", |
|
|
2302 |
"0.737883 129\n", |
|
|
2303 |
"0.000000 124\n", |
|
|
2304 |
"0.796930 1\n", |
|
|
2305 |
"Name: weights, dtype: int64" |
|
|
2306 |
] |
|
|
2307 |
}, |
|
|
2308 |
"execution_count": 183, |
|
|
2309 |
"metadata": {}, |
|
|
2310 |
"output_type": "execute_result" |
|
|
2311 |
} |
|
|
2312 |
], |
|
|
2313 |
"source": [ |
|
|
2314 |
"train_md.weights.value_counts()" |
|
|
2315 |
] |
|
|
2316 |
}, |
|
|
2317 |
{ |
|
|
2318 |
"cell_type": "code", |
|
|
2319 |
"execution_count": null, |
|
|
2320 |
"metadata": {}, |
|
|
2321 |
"outputs": [], |
|
|
2322 |
"source": [] |
|
|
2323 |
}, |
|
|
2324 |
{ |
|
|
2325 |
"cell_type": "code", |
|
|
2326 |
"execution_count": 184, |
|
|
2327 |
"metadata": {}, |
|
|
2328 |
"outputs": [], |
|
|
2329 |
"source": [ |
|
|
2330 |
"test_md = train_md.loc[train_md.test].copy().reset_index(drop=True)\n", |
|
|
2331 |
"train_md = train_md.loc[~train_md.test].copy().reset_index(drop=True)\n", |
|
|
2332 |
"\n", |
|
|
2333 |
"assert len(test_md) == 78545\n", |
|
|
2334 |
"assert len(train_md) == 674257\n", |
|
|
2335 |
"\n", |
|
|
2336 |
"train_md.to_csv(PATH_WORK/'train_md.csv', index=False)\n", |
|
|
2337 |
"test_md.to_csv(PATH_WORK/'test_md.csv', index=False)" |
|
|
2338 |
] |
|
|
2339 |
}, |
|
|
2340 |
{ |
|
|
2341 |
"cell_type": "code", |
|
|
2342 |
"execution_count": null, |
|
|
2343 |
"metadata": {}, |
|
|
2344 |
"outputs": [], |
|
|
2345 |
"source": [] |
|
|
2346 |
} |
|
|
2347 |
], |
|
|
2348 |
"metadata": { |
|
|
2349 |
"kernelspec": { |
|
|
2350 |
"display_name": "Python 3", |
|
|
2351 |
"language": "python", |
|
|
2352 |
"name": "python3" |
|
|
2353 |
}, |
|
|
2354 |
"language_info": { |
|
|
2355 |
"codemirror_mode": { |
|
|
2356 |
"name": "ipython", |
|
|
2357 |
"version": 3 |
|
|
2358 |
}, |
|
|
2359 |
"file_extension": ".py", |
|
|
2360 |
"mimetype": "text/x-python", |
|
|
2361 |
"name": "python", |
|
|
2362 |
"nbconvert_exporter": "python", |
|
|
2363 |
"pygments_lexer": "ipython3", |
|
|
2364 |
"version": "3.7.4" |
|
|
2365 |
} |
|
|
2366 |
}, |
|
|
2367 |
"nbformat": 4, |
|
|
2368 |
"nbformat_minor": 2 |
|
|
2369 |
} |