03_datasets.ipynb 220 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "c6ae1c78-f24c-4ffe-8090-cde031b4ee55",
   "metadata": {},
   "source": [
    "# Datasets\n",
    "Lecture Data Engineering and Analytics<br>\n",
    "Eva Zangerle"
   ]
  },
  {
   "cell_type": "code",
15
   "execution_count": null,
16
17
18
19
   "id": "7720b0f5-e249-4266-827a-da6fbe81b927",
   "metadata": {},
   "outputs": [],
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
20
    "import json\n",
21
22
    "import os\n",
    "import re\n",
Eva Zangerle's avatar
Eva Zangerle committed
23
24
25
    "import traceback\n",
    "\n",
    "import datasets\n",
26
    "import matplotlib.pyplot as plt\n",
Eva Zangerle's avatar
Eva Zangerle committed
27
28
    "import pandas as pd\n",
    "import seaborn as sns\n",
29
    "from matplotlib.collections import PatchCollection\n",
Eva Zangerle's avatar
Eva Zangerle committed
30
    "from matplotlib.patches import Polygon"
31
32
33
34
   ]
  },
  {
   "cell_type": "code",
35
   "execution_count": null,
36
37
38
39
   "id": "17efd817-f847-4ccc-9bbc-655341ef7c4a",
   "metadata": {},
   "outputs": [],
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
40
    "data_dir = \"../data\""
41
42
43
44
45
46
47
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ecd30be6-6645-40c7-8458-d847038f00a0",
   "metadata": {},
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
48
    "## Using Existing Datasets"
49
50
51
52
   ]
  },
  {
   "cell_type": "code",
53
   "execution_count": null,
54
55
   "id": "43ad0673-a0e3-4d0e-8eb5-a3b96be285dc",
   "metadata": {},
56
   "outputs": [],
57
58
   "source": [
    "# hugging face python interface\n",
Eva Zangerle's avatar
Eva Zangerle committed
59
60
61
62
63
64
65
66
67
68
    "datasets.list_datasets()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "308db679-4cce-4d6e-a5d2-2240f57f2a69",
   "metadata": {},
   "outputs": [],
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
69
    "acronym_dataset = datasets.load_dataset(\"acronym_identification\")\n",
70
71
    "print(acronym_dataset)\n",
    "len(acronym_dataset)\n",
Eva Zangerle's avatar
Eva Zangerle committed
72
    "acronym_dataset[\"train\"][0]"
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
   ]
  },
  {
   "cell_type": "markdown",
   "id": "24a3e66f-9a2d-4b17-b528-55891918d6df",
   "metadata": {},
   "source": [
    "## CSV\n",
    "\n",
    "### Initial CSV Wrangling (and some quick showcasing of pandas)\n",
    "Example adapted from CleanData."
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
88
   "execution_count": 8,
89
90
91
92
   "id": "061aaaad-004c-41a7-9eac-cd4eb4ffd169",
   "metadata": {},
   "outputs": [],
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
93
    "students = pd.read_csv(os.path.join(data_dir, \"student-scores.csv\"))"
94
95
96
97
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
98
   "execution_count": 9,
99
100
   "id": "39b9933e-8814-4eb8-9d04-cd8f6aa7861f",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 6 entries, 0 to 5\n",
      "Data columns (total 6 columns):\n",
      " #   Column      Non-Null Count  Dtype \n",
      "---  ------      --------------  ----- \n",
      " 0   ID          6 non-null      int64 \n",
      " 1   Last Name   6 non-null      object\n",
      " 2   First Name  6 non-null      object\n",
      " 3   4th Grade   6 non-null      object\n",
      " 4   5th Grade   6 non-null      object\n",
      " 5   6th Grade   6 non-null      object\n",
      "dtypes: int64(1), object(5)\n",
      "memory usage: 416.0+ bytes\n"
     ]
    }
   ],
122
123
124
125
126
127
128
   "source": [
    "# inspect resulting dataframe\n",
    "students.info()"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
129
   "execution_count": 10,
130
131
   "id": "999d2e56-1c19-4d9b-98f5-b77cb3311506",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
132
133
134
135
136
137
138
139
140
141
142
143
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6, 6)"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
144
145
146
147
148
149
   "source": [
    "students.shape"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
150
   "execution_count": 11,
151
152
   "id": "254888dd-c163-497f-89c2-12c8de914f1b",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
153
154
155
156
157
158
159
160
161
162
163
164
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['ID', 'Last Name', 'First Name', '4th Grade', '5th Grade', '6th Grade'], dtype='object')"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
165
   "source": [
166
    "students.columns"
167
168
169
170
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
171
   "execution_count": 12,
172
   "id": "0324937f-117b-4698-9498-989fb0fef8bc",
173
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ID</th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>Johnson</td>\n",
       "      <td>Mia</td>\n",
       "      <td>A</td>\n",
       "      <td>B+</td>\n",
       "      <td>A-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>Lopez</td>\n",
       "      <td>Liam</td>\n",
       "      <td>B</td>\n",
       "      <td>B</td>\n",
       "      <td>A+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>Lee</td>\n",
       "      <td>Isabella</td>\n",
       "      <td>C</td>\n",
       "      <td>C-</td>\n",
       "      <td>B-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>B</td>\n",
       "      <td>B-</td>\n",
       "      <td>C+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>Gupta</td>\n",
       "      <td>Olivia</td>\n",
       "      <td>B</td>\n",
       "      <td>A+</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>A+</td>\n",
       "      <td>B-</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ID Last Name First Name 4th Grade 5th Grade 6th Grade\n",
       "0   1   Johnson        Mia         A        B+        A-\n",
       "1   2     Lopez       Liam         B         B        A+\n",
       "2   3       Lee   Isabella         C        C-        B-\n",
       "3   4    Fisher      Mason         B        B-        C+\n",
       "4   5     Gupta     Olivia         B        A+         A\n",
       "5   6  Robinson     Sophia        A+        B-         A"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
278
279
280
281
282
283
   "source": [
    "students"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
284
   "execution_count": 13,
285
   "id": "4f0fb3fb-3a72-4efc-8543-14db3068b9fe",
286
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0     Johnson\n",
       "1       Lopez\n",
       "2         Lee\n",
       "3      Fisher\n",
       "4       Gupta\n",
       "5    Robinson\n",
       "Name: Last Name, dtype: object"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
305
   "source": [
306
    "# select single column, returns Series (numpy ndarray)\n",
Eva Zangerle's avatar
Eva Zangerle committed
307
    "students[\"Last Name\"]"
308
309
310
311
   ]
  },
  {
   "cell_type": "code",
312
   "execution_count": null,
313
314
315
316
   "id": "1ada305b-26c2-48e2-a5aa-c8dfa61584f6",
   "metadata": {},
   "outputs": [],
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
317
318
    "# select multiple columns, returns dataframe (requires passed param to be a list)\n",
    "grades = students[[\"4th Grade\", \"5th Grade\", \"6th Grade\"]]"
319
320
321
322
   ]
  },
  {
   "cell_type": "code",
323
   "execution_count": null,
324
   "id": "6a2348ed-d401-4b41-bdab-0e1a80f0c60b",
325
   "metadata": {},
326
   "outputs": [],
327
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
328
    "grades.drop(columns=[\"4th Grade\"])"
329
330
331
332
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
333
   "execution_count": 15,
334
   "id": "98beb5de-0bae-4c86-b7a0-1e6a07c33903",
335
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
   "outputs": [
    {
     "data": {
      "text/plain": [
       "ID                2\n",
       "Last Name     Lopez\n",
       "First Name     Liam\n",
       "4th Grade         B\n",
       "5th Grade         B\n",
       "6th Grade        A+\n",
       "Name: 1, dtype: object"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ID</th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>B</td>\n",
       "      <td>B-</td>\n",
       "      <td>C+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>A+</td>\n",
       "      <td>B-</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ID Last Name First Name 4th Grade 5th Grade 6th Grade\n",
       "3   4    Fisher      Mason         B        B-        C+\n",
       "5   6  Robinson     Sophia        A+        B-         A"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ID</th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>Lee</td>\n",
       "      <td>Isabella</td>\n",
       "      <td>C</td>\n",
       "      <td>C-</td>\n",
       "      <td>B-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>B</td>\n",
       "      <td>B-</td>\n",
       "      <td>C+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>Gupta</td>\n",
       "      <td>Olivia</td>\n",
       "      <td>B</td>\n",
       "      <td>A+</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ID Last Name First Name 4th Grade 5th Grade 6th Grade\n",
       "2   3       Lee   Isabella         C        C-        B-\n",
       "3   4    Fisher      Mason         B        B-        C+\n",
       "4   5     Gupta     Olivia         B        A+         A"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
488
   "source": [
489
490
    "# select via row position\n",
    "students.iloc[1]\n",
Eva Zangerle's avatar
Eva Zangerle committed
491
    "students.iloc[[3, 5]]\n",
492
    "students.iloc[2:5]"
493
494
495
496
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
497
   "execution_count": 16,
498
   "id": "804d3793-6187-4cca-998d-3c8d9bd6f508",
499
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Johnson</td>\n",
       "      <td>Mia</td>\n",
       "      <td>A</td>\n",
       "      <td>B+</td>\n",
       "      <td>A-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Lopez</td>\n",
       "      <td>Liam</td>\n",
       "      <td>B</td>\n",
       "      <td>B</td>\n",
       "      <td>A+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Lee</td>\n",
       "      <td>Isabella</td>\n",
       "      <td>C</td>\n",
       "      <td>C-</td>\n",
       "      <td>B-</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>B</td>\n",
       "      <td>B-</td>\n",
       "      <td>C+</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>Gupta</td>\n",
       "      <td>Olivia</td>\n",
       "      <td>B</td>\n",
       "      <td>A+</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>A+</td>\n",
       "      <td>B-</td>\n",
       "      <td>A</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Last Name First Name 4th Grade 5th Grade 6th Grade\n",
       "ID                                                   \n",
       "1    Johnson        Mia         A        B+        A-\n",
       "2      Lopez       Liam         B         B        A+\n",
       "3        Lee   Isabella         C        C-        B-\n",
       "4     Fisher      Mason         B        B-        C+\n",
       "5      Gupta     Olivia         B        A+         A\n",
       "6   Robinson     Sophia        A+        B-         A"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
606
   "source": [
607
    "# set index on row identifier\n",
Eva Zangerle's avatar
Eva Zangerle committed
608
    "students = students.set_index(\"ID\")\n",
609
    "students"
610
611
612
613
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
614
   "execution_count": 17,
615
   "id": "5610aee1-32f7-4789-b59e-f3142de2391c",
616
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Last Name     Johnson\n",
       "First Name        Mia\n",
       "4th Grade           A\n",
       "5th Grade          B+\n",
       "6th Grade          A-\n",
       "Name: 1, dtype: object"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
634
   "source": [
635
636
    "# use index to access rows\n",
    "students.loc[1]"
637
638
639
640
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
641
   "execution_count": 20,
642
643
644
645
646
647
   "id": "35dafc6e-a5ed-4fc7-b2b4-6cce4e37a048",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Generic conversion of letter grades to numbers\n",
    "def num_score(x):\n",
Eva Zangerle's avatar
Eva Zangerle committed
648
649
650
651
652
653
654
655
656
657
658
    "    to_num = {\n",
    "        \"A+\": 4.3,\n",
    "        \"A\": 4,\n",
    "        \"A-\": 3.7,\n",
    "        \"B+\": 3.3,\n",
    "        \"B\": 3,\n",
    "        \"B-\": 2.7,\n",
    "        \"C+\": 2.3,\n",
    "        \"C\": 2,\n",
    "        \"C-\": 1.7,\n",
    "    }\n",
659
660
661
662
663
    "    return x.map(lambda x: to_num.get(x, x))"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
664
   "execution_count": 21,
665
   "id": "1a9db8e8-3940-4d9d-b5a9-0992b21ca796",
666
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Johnson</td>\n",
       "      <td>Mia</td>\n",
       "      <td>4.0</td>\n",
       "      <td>3.3</td>\n",
       "      <td>3.7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Lopez</td>\n",
       "      <td>Liam</td>\n",
       "      <td>3.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>4.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Lee</td>\n",
       "      <td>Isabella</td>\n",
       "      <td>2.0</td>\n",
       "      <td>1.7</td>\n",
       "      <td>2.7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>3.0</td>\n",
       "      <td>2.7</td>\n",
       "      <td>2.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>Gupta</td>\n",
       "      <td>Olivia</td>\n",
       "      <td>3.0</td>\n",
       "      <td>4.3</td>\n",
       "      <td>4.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>4.3</td>\n",
       "      <td>2.7</td>\n",
       "      <td>4.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Last Name First Name  4th Grade  5th Grade  6th Grade\n",
       "ID                                                      \n",
       "1    Johnson        Mia        4.0        3.3        3.7\n",
       "2      Lopez       Liam        3.0        3.0        4.3\n",
       "3        Lee   Isabella        2.0        1.7        2.7\n",
       "4     Fisher      Mason        3.0        2.7        2.3\n",
       "5      Gupta     Olivia        3.0        4.3        4.0\n",
       "6   Robinson     Sophia        4.3        2.7        4.0"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
773
   "source": [
774
775
    "students = students.apply(num_score)\n",
    "students"
776
777
778
   ]
  },
  {
779
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
780
   "execution_count": 23,
781
   "id": "182dc7aa-9915-454b-93cc-20bfe835be64",
782
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Johnson</td>\n",
       "      <td>Mia</td>\n",
       "      <td>4.0</td>\n",
       "      <td>3.3</td>\n",
       "      <td>3.7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Lopez</td>\n",
       "      <td>Liam</td>\n",
       "      <td>3.0</td>\n",
       "      <td>3.0</td>\n",
       "      <td>4.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Fisher</td>\n",
       "      <td>Mason</td>\n",
       "      <td>3.0</td>\n",
       "      <td>2.7</td>\n",
       "      <td>2.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>Gupta</td>\n",
       "      <td>Olivia</td>\n",
       "      <td>3.0</td>\n",
       "      <td>4.3</td>\n",
       "      <td>4.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>4.3</td>\n",
       "      <td>2.7</td>\n",
       "      <td>4.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Last Name First Name  4th Grade  5th Grade  6th Grade\n",
       "ID                                                      \n",
       "1    Johnson        Mia        4.0        3.3        3.7\n",
       "2      Lopez       Liam        3.0        3.0        4.3\n",
       "4     Fisher      Mason        3.0        2.7        2.3\n",
       "5      Gupta     Olivia        3.0        4.3        4.0\n",
       "6   Robinson     Sophia        4.3        2.7        4.0"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
880
   "source": [
881
    "# filtering using masks\n",
Eva Zangerle's avatar
Eva Zangerle committed
882
    "mask = students[\"4th Grade\"] > 2.0\n",
883
    "students[mask]"
884
885
886
887
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
888
   "execution_count": 24,
889
   "id": "2874f254-cea6-4d22-bf18-362862869bf1",
890
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Last Name</th>\n",
       "      <th>First Name</th>\n",
       "      <th>4th Grade</th>\n",
       "      <th>5th Grade</th>\n",
       "      <th>6th Grade</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>Robinson</td>\n",
       "      <td>Sophia</td>\n",
       "      <td>4.3</td>\n",
       "      <td>2.7</td>\n",
       "      <td>4.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Johnson</td>\n",
       "      <td>Mia</td>\n",
       "      <td>4.0</td>\n",
       "      <td>3.3</td>\n",
       "      <td>3.7</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Last Name First Name  4th Grade  5th Grade  6th Grade\n",
       "ID                                                      \n",
       "6   Robinson     Sophia        4.3        2.7        4.0\n",
       "1    Johnson        Mia        4.0        3.3        3.7"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
961
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
962
963
    "# select largest values\n",
    "students.nlargest(2, \"4th Grade\")"
964
965
966
967
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
968
   "execution_count": 25,
969
   "id": "87faf6c5-8bc5-488a-b70e-495843bb8511",
970
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
971
972
973
974
975
976
977
978
979
980
981
982
983
984
   "outputs": [
    {
     "data": {
      "image/png": "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Gopyqv6/Rkh0J+546W0Wv/Mqv7z3hrlf9vZ7LuiXLS0uYtP3X7Nj8c94+vtz/dN/p0PfAQ37ixCiiduzZ497z549C+p7v8LCQod+/fqd++STT44/+eSTbf7v//4vdN68ecc++OCD4DfeeOP40KFDCwCeeuqpU2+88cZJgOuvv77dN9984zt16lSbDdCVgBXNSqUm56FDK91mKiig5NixC2q+uYuXVGpyxtnZfI2qNd927XBs1QpPP38m/+3f5n7ZJT+X7y9bVjM9nrCbFXPfIzv9JD2vHsvQ2+/B1cPTlr8GIeqttpqmrdx5550R27Zt83J2dtbTpk07VdN5Dg4O3H///VkA995775kbb7wxurrzli5d6v3WW2+FFBUVOWRnZzt169atEBvOgJGAFS2Gg4cHbl264Nal8tKD5U3OFfbsLVtg49z69eiKTc7e3uXrN/eIisLnypFs3LKe+f/3OGNnPkHib+vY/esy/Fq34ea/v0RE9562fpqimdJaY9RGnByaz9t2jx49ChcuXFi+A8mXX3557OTJk079+vXr6uTkpE2m8zvMFRcX19i2W914hoKCAjVr1qzIrVu37ouOji594oknQouKimw6XL/5/KWEuESVmpz79q10mzYaK41yLmt2Lvh9O7lxi/AEBri7sjOqiO/++RcU0C0sioFjJuIVFGKX5yOaF601q4+v5sP4D7k++npu73q7vYvUYCZMmJD397//Xb366qtBzzzzzGmA/Px8B4AOHTqUfPTRRx5Go5GkpCTn3bt3lzcDmUwmPvvsM/9p06ad/fzzzwP69++fB+Dl5WXMyclxBCgoKHAACAkJMeTk5DgsWrTIf8KECWdt+fwkYIWohXJ0xCU8HJfw8AubnAsLy0c5tz14gPjdOwjJyMJz6WrSf1kFgGNQIO7dYnDr3h23mBjcYmJwbh1sj6cimpiKwZqYlUikTyStPVrbu1gNysHBgUWLFh15+OGHw2fPnh3SqlUrg4eHh/H5558/cc011+T/5z//KY6Ojo6Jjo4u6tatW3lfrbu7u2nbtm2er7/+emhAQEDpTz/9dBTgrrvuynzkkUcin3rqKdP27dv333777ae7du0aExQUZIiNjT1Xc0mso07b1TUmsl2daOxM585RlJhIUUICRQkJFCYkUHLkKFj+r5WHbsz54JXQFWWqC9bpPaczrt24y2oe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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
985
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
986
987
988
989
990
991
    "(\n",
    "    students.set_index(\"Last Name\")\n",
    "    .drop(\"First Name\", axis=1)\n",
    "    .apply(num_score)\n",
    "    .T.plot(title=\"Student score by year\", ylabel=\"Score\", xlabel=\"Grade\")\n",
    "    .legend(bbox_to_anchor=(1, 0.75))\n",
Eva Zangerle's avatar
Eva Zangerle committed
992
    ");"
993
994
995
996
997
998
999
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9fa5d006-e5f5-402e-83eb-46a26f8a56c0",
   "metadata": {},
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1000
    "### Sanity Checks - Data Format"
1001
1002
1003
1004
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1005
   "execution_count": 26,
1006
1007
   "id": "a7c17f0e-36cb-4db3-b5be-ae61e769efdd",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Error tokenizing data. C error: Expected 6 fields in line 13128, saw 8\n",
      "\n"
     ]
    }
   ],
1018
1019
1020
   "source": [
    "# Use try/except to avoid full traceback in example\n",
    "try:\n",
Eva Zangerle's avatar
Eva Zangerle committed
1021
    "    pd.read_csv(os.path.join(data_dir, \"big-random.csv\"))\n",
1022
1023
1024
1025
1026
1027
    "except Exception as err:\n",
    "    print(err)\n",
    "    # traceback.print_exc()"
   ]
  },
  {
Eva Zangerle's avatar
Eva Zangerle committed
1028
1029
1030
   "cell_type": "code",
   "execution_count": 27,
   "id": "525068b8-1302-48d8-82f2-987870dd943f",
1031
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1032
1033
1034
1035
1036
1037
1038
1039
1040
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      " 100004  100004 4335846 ../data/big-random.csv\n"
     ]
    }
   ],
1041
1042
1043
1044
1045
1046
1047
1048
   "source": [
    "%%bash\n",
    "# Check general size/shape of the file\n",
    "wc ../data/big-random.csv"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1049
   "execution_count": 32,
1050
1051
   "id": "c1d4c9c4-9d01-40a2-bd97-869b6911d0be",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "     54 3\n",
      "  99909 5\n",
      "     41 7\n"
     ]
    }
   ],
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
   "source": [
    "%%bash\n",
    "# gather number of commas \n",
    "cat ../data/big-random.csv | \n",
    "    tr -d -c ',\\n' | \n",
    "    awk '{ print length; }' | \n",
    "    sort | \n",
    "    uniq -c"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1075
   "execution_count": 33,
1076
1077
   "id": "d5ecc967-cd9b-4834-92ac-75dc935de39b",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "13127-mayday,10,disinstallavo,46,redimente,70\n",
      "13128:ammalizio,41,sbellico,89,distornavano,67,pioterebbe,43\n",
      "13129-ramagliature,24,affumicatoi,42,tambusseremo,23\n",
      "--\n",
      "13564-zinconcini,35,dissennammo,52,deviino,76\n",
      "13565:microcassetta,91,delicatuzzi,43,dissapori,30,sconverreste,50\n",
      "13566-monastica,27,laparatomici,90,glottodidattica,92\n",
      "--\n",
      "13575-nuotate,91,dormicolavano,51,sommante,80\n",
      "13576:offrirebbe,46,rifiancante,86,triangolano,31,raggiavamo,86\n"
     ]
    }
   ],
1096
1097
1098
1099
1100
1101
1102
1103
   "source": [
    "%%bash\n",
    "# Inspect lines not adhering to format\n",
    "grep -C1 -nP '^([^,]+,){7}' ../data/big-random.csv | head"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1104
   "execution_count": 34,
1105
1106
   "id": "fead830d-469e-4b8b-9ead-822343766aa3",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>infilaste</td>\n",
       "      <td>21</td>\n",
       "      <td>esemplava</td>\n",
       "      <td>15</td>\n",
       "      <td>stabaccavo</td>\n",
       "      <td>73</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>abbadaste</td>\n",
       "      <td>50</td>\n",
       "      <td>enartrosi</td>\n",
       "      <td>85</td>\n",
       "      <td>iella</td>\n",
       "      <td>54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>frustulo</td>\n",
       "      <td>77</td>\n",
       "      <td>temporale</td>\n",
       "      <td>83</td>\n",
       "      <td>scoppianti</td>\n",
       "      <td>91</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>gavocciolo</td>\n",
       "      <td>84</td>\n",
       "      <td>postelegrafiche</td>\n",
       "      <td>93</td>\n",
       "      <td>inglesizzanti</td>\n",
       "      <td>63</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>svani</td>\n",
       "      <td>92</td>\n",
       "      <td>spiombasti</td>\n",
       "      <td>99</td>\n",
       "      <td>aderisce</td>\n",
       "      <td>74</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99904</th>\n",
       "      <td>rattralciassi</td>\n",
       "      <td>12</td>\n",
       "      <td>riflessogeni</td>\n",
       "      <td>65</td>\n",
       "      <td>rinvanghiate</td>\n",
       "      <td>90</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99905</th>\n",
       "      <td>notareschi</td>\n",
       "      <td>60</td>\n",
       "      <td>paganico</td>\n",
       "      <td>64</td>\n",
       "      <td>esecutavamo</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99906</th>\n",
       "      <td>rispranghiamo</td>\n",
       "      <td>11</td>\n",
       "      <td>schioccano</td>\n",
       "      <td>44</td>\n",
       "      <td>imbozzarono</td>\n",
       "      <td>80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99907</th>\n",
       "      <td>compone</td>\n",
       "      <td>85</td>\n",
       "      <td>disfronderebbe</td>\n",
       "      <td>19</td>\n",
       "      <td>vaporizzavo</td>\n",
       "      <td>54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99908</th>\n",
       "      <td>ritardata</td>\n",
       "      <td>29</td>\n",
       "      <td>scordare</td>\n",
       "      <td>43</td>\n",
       "      <td>appuntirebbe</td>\n",
       "      <td>24</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>99909 rows × 6 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                   0   1                2   3              4   5\n",
       "0          infilaste  21        esemplava  15     stabaccavo  73\n",
       "1          abbadaste  50        enartrosi  85          iella  54\n",
       "2           frustulo  77        temporale  83     scoppianti  91\n",
       "3         gavocciolo  84  postelegrafiche  93  inglesizzanti  63\n",
       "4              svani  92       spiombasti  99       aderisce  74\n",
       "...              ...  ..              ...  ..            ...  ..\n",
       "99904  rattralciassi  12     riflessogeni  65   rinvanghiate  90\n",
       "99905     notareschi  60         paganico  64    esecutavamo  20\n",
       "99906  rispranghiamo  11       schioccano  44    imbozzarono  80\n",
       "99907        compone  85   disfronderebbe  19    vaporizzavo  54\n",
       "99908      ritardata  29         scordare  43   appuntirebbe  24\n",
       "\n",
       "[99909 rows x 6 columns]"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
1264
1265
1266
   "source": [
    "# filter out lines that do adhere to the format\n",
    "# discard any other lines\n",
Eva Zangerle's avatar
Eva Zangerle committed
1267
1268
1269
    "pat = re.compile(r\"^([^,]+,){5}[^,]*$\")\n",
    "with open(os.path.join(data_dir, \"big-random.csv\")) as fh:\n",
    "    lines = [l.strip().split(\",\") for l in fh if re.match(pat, l)]\n",
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
    "pd.DataFrame(lines)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fedd8809-fca6-4bc7-adf2-6ed201d789fe",
   "metadata": {},
   "source": [
    "### Common Problems"
   ]
  },
Eva Zangerle's avatar
Eva Zangerle committed
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "5f09253d-61bb-417d-8c0e-752fc81b564f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 10197 entries, 0 to 10196\n",
      "Data columns (total 21 columns):\n",
      " #   Column                  Non-Null Count  Dtype  \n",
      "---  ------                  --------------  -----  \n",
      " 0   id                      10197 non-null  int64  \n",
      " 1   title                   10197 non-null  object \n",
      " 2   imdbID                  10197 non-null  int64  \n",
      " 3   spanishTitle            10197 non-null  object \n",
      " 4   imdbPictureURL          10016 non-null  object \n",
      " 5   year                    10197 non-null  int64  \n",
      " 6   rtID                    9886 non-null   object \n",
      " 7   rtAllCriticsRating      9967 non-null   float64\n",
      " 8   rtAllCriticsNumReviews  9967 non-null   float64\n",
      " 9   rtAllCriticsNumFresh    9967 non-null   float64\n",
      " 10  rtAllCriticsNumRotten   9967 non-null   float64\n",
      " 11  rtAllCriticsScore       9967 non-null   float64\n",
      " 12  rtTopCriticsRating      9967 non-null   float64\n",
      " 13  rtTopCriticsNumReviews  9967 non-null   float64\n",
      " 14  rtTopCriticsNumFresh    9967 non-null   float64\n",
      " 15  rtTopCriticsNumRotten   9967 non-null   float64\n",
      " 16  rtTopCriticsScore       9967 non-null   float64\n",
      " 17  rtAudienceRating        9967 non-null   float64\n",
      " 18  rtAudienceNumRatings    9967 non-null   float64\n",
      " 19  rtAudienceScore         9967 non-null   float64\n",
      " 20  rtPictureURL            9967 non-null   object \n",
      "dtypes: float64(13), int64(3), object(5)\n",
      "memory usage: 6.2 MB\n"
     ]
    }
   ],
   "source": [
    "## Encodings example\n",
    "# read in movie data\n",
    "# rt = rottenTomatoes\n",
    "# encoded in latin1\n",
    "movies = pd.read_csv(\n",
    "    os.path.join(data_dir, \"hetrec/movies.dat\"),\n",
    "    delimiter=\"\\t\",\n",
    "    na_values=[\"\\\\N\"],\n",
    "    encoding=\"latin1\",\n",
    ")\n",
    "movies.info(memory_usage=\"deep\")"
   ]
  },
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
  {
   "cell_type": "markdown",
   "id": "a8689362-4afd-4c34-abeb-9fa943105489",
   "metadata": {},
   "source": [
    "datatypes cannot be inferred from textual data"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1346
   "execution_count": 38,
1347
1348
   "id": "e1410891-448f-467e-9981-ab776f3680a5",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Part_No\tDescription\tDate\tPrice (USD)\n",
      "12345\tWankle rotary\t2020-04-12T15:53:21\t555.55\n",
      "67890\tSousaphone\tApril 12, 2020\t333.33\n",
      "2468\tFeather Duster\t4/12/2020\t22.22\n",
      "A9922\tArea 51 metal\t04/12/20\t9999.99\n"
     ]
    }
   ],
1362
1363
1364
1365
1366
1367
1368
   "source": [
    "%%bash\n",
    "cat ../data/parts.tsv"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1369
   "execution_count": 39,
1370
1371
   "id": "4c0aa18a-e75f-4fe4-b981-ad0f55550155",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Part_No</th>\n",
       "      <th>Description</th>\n",
       "      <th>Date</th>\n",
       "      <th>Price (USD)</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>12345</td>\n",
       "      <td>Wankle rotary</td>\n",
       "      <td>2020-04-12T15:53:21</td>\n",
       "      <td>555.55</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>67890</td>\n",
       "      <td>Sousaphone</td>\n",
       "      <td>April 12, 2020</td>\n",
       "      <td>333.33</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2468</td>\n",
       "      <td>Feather Duster</td>\n",
       "      <td>4/12/2020</td>\n",
       "      <td>22.22</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>A9922</td>\n",
       "      <td>Area 51 metal</td>\n",
       "      <td>04/12/20</td>\n",
       "      <td>9999.99</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  Part_No     Description                 Date  Price (USD)\n",
       "0   12345   Wankle rotary  2020-04-12T15:53:21       555.55\n",
       "1   67890      Sousaphone       April 12, 2020       333.33\n",
       "2    2468  Feather Duster            4/12/2020        22.22\n",
       "3   A9922   Area 51 metal             04/12/20      9999.99"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
Eva Zangerle's avatar
Eva Zangerle committed
1446
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1447
    "df = pd.read_csv(os.path.join(data_dir, \"parts.tsv\"), delimiter=\"\\t\")\n",
Eva Zangerle's avatar
Eva Zangerle committed
1448
1449
1450
1451
1452
    "df"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1453
   "execution_count": 40,
Eva Zangerle's avatar
Eva Zangerle committed
1454
1455
   "id": "66c94f29-f1b7-4942-9b78-e3c533211ec7",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Part_No         object\n",
       "Description     object\n",
       "Date            object\n",
       "Price (USD)    float64\n",
       "dtype: object"
      ]
     },
     "execution_count": 40,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
Eva Zangerle's avatar
Eva Zangerle committed
1472
1473
1474
1475
1476
1477
   "source": [
    "df.dtypes"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1478
   "execution_count": 41,
Eva Zangerle's avatar
Eva Zangerle committed
1479
1480
   "id": "d0372fad-a861-4b5a-abe7-670a0e841536",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Part_No</th>\n",
       "      <th>Description</th>\n",
       "      <th>Date</th>\n",
       "      <th>Price (USD)</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>12345</td>\n",
       "      <td>Wankle rotary</td>\n",
       "      <td>2020-04-12 15:53:21</td>\n",
       "      <td>555.55</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>67890</td>\n",
       "      <td>Sousaphone</td>\n",
       "      <td>2020-04-12 00:00:00</td>\n",
       "      <td>333.33</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2468</td>\n",
       "      <td>Feather Duster</td>\n",
       "      <td>2020-04-12 00:00:00</td>\n",
       "      <td>22.22</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>A9922</td>\n",
       "      <td>Area 51 metal</td>\n",
       "      <td>2020-04-12 00:00:00</td>\n",
       "      <td>9999.99</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  Part_No     Description                Date  Price (USD)\n",
       "0   12345   Wankle rotary 2020-04-12 15:53:21       555.55\n",
       "1   67890      Sousaphone 2020-04-12 00:00:00       333.33\n",
       "2    2468  Feather Duster 2020-04-12 00:00:00        22.22\n",
       "3   A9922   Area 51 metal 2020-04-12 00:00:00      9999.99"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
Eva Zangerle's avatar
Eva Zangerle committed
1555
1556
   "source": [
    "# let pandas extract the right date format\n",
Eva Zangerle's avatar
Eva Zangerle committed
1557
1558
1559
    "df = pd.read_csv(\n",
    "    os.path.join(data_dir, \"parts.tsv\"), delimiter=\"\\t\", parse_dates=[\"Date\"]\n",
    ")\n",
Eva Zangerle's avatar
Eva Zangerle committed
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
    "df"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0e8192a4-d359-429a-8b30-2673b2319d2e",
   "metadata": {},
   "source": [
    "## JSON"
   ]
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
  },
  {
   "cell_type": "markdown",
   "id": "ced470cd-49f7-488e-90df-d4b2f1342afc",
   "metadata": {},
   "source": [
    "### Parsing Numbers"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1581
   "execution_count": 42,
1582
1583
   "id": "1c35381a-e8ec-4eb3-851a-a487d8950940",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[1e+308, inf, 1.2345678901234567]"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
1596
1597
1598
1599
1600
1601
1602
1603
   "source": [
    "# An interpreted float, an overflow, and a truncation\n",
    "json_str = \"[1e308, 1e309, 1.2345678901234567890]\"\n",
    "json.loads(json_str)"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1604
   "execution_count": 44,
1605
1606
   "id": "f4bf7d2f-d9b0-4563-9eae-db1bd486f744",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[nan, inf, -inf]"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "text/plain": [
       "['INVALID', 'INVALID', 'INVALID']"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "ename": "JSONDecodeError",
     "evalue": "Expecting value: line 1 column 17 (char 16)",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mJSONDecodeError\u001b[0m                           Traceback (most recent call last)",
      "\u001b[0;32m/tmp/ipykernel_16442/322787531.py\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0mvals\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0mjson\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloads\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"[NaN, Infinity, -Infinity]\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparse_constant\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mlambda\u001b[0m \u001b[0m_\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;34m\"INVALID\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0mjson\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloads\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"[NaN, Infinity, test]\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mparse_constant\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mlambda\u001b[0m \u001b[0m_\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;34m\"INVALID\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m/usr/lib64/python3.9/json/__init__.py\u001b[0m in \u001b[0;36mloads\u001b[0;34m(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)\u001b[0m\n\u001b[1;32m    357\u001b[0m     \u001b[0;32mif\u001b[0m \u001b[0mparse_constant\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    358\u001b[0m         \u001b[0mkw\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'parse_constant'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mparse_constant\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 359\u001b[0;31m     \u001b[0;32mreturn\u001b[0m \u001b[0mcls\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m/usr/lib64/python3.9/json/decoder.py\u001b[0m in \u001b[0;36mdecode\u001b[0;34m(self, s, _w)\u001b[0m\n\u001b[1;32m    335\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    336\u001b[0m         \"\"\"\n\u001b[0;32m--> 337\u001b[0;31m         \u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mraw_decode\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0midx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0m_w\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    338\u001b[0m         \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_w\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mend\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    339\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/usr/lib64/python3.9/json/decoder.py\u001b[0m in \u001b[0;36mraw_decode\u001b[0;34m(self, s, idx)\u001b[0m\n\u001b[1;32m    353\u001b[0m             \u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscan_once\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0midx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    354\u001b[0m         \u001b[0;32mexcept\u001b[0m \u001b[0mStopIteration\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 355\u001b[0;31m             \u001b[0;32mraise\u001b[0m \u001b[0mJSONDecodeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"Expecting value\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalue\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    356\u001b[0m         \u001b[0;32mreturn\u001b[0m \u001b[0mobj\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mend\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mJSONDecodeError\u001b[0m: Expecting value: line 1 column 17 (char 16)"
     ]
    }
   ],
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
   "source": [
    "specials = \"[NaN, Infinity, -Infinity]\"\n",
    "vals = json.loads(specials)\n",
    "vals\n",
    "json.loads(\"[NaN, Infinity, -Infinity]\", parse_constant=lambda _: \"INVALID\")\n",
    "json.loads(\"[NaN, Infinity, test]\", parse_constant=lambda _: \"INVALID\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dacdb481-be6f-41df-8312-921a2ab34d86",
   "metadata": {},
   "source": [
    "### JSON Lines"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1661
   "execution_count": 46,
1662
1663
   "id": "782e0460-c126-4e94-b717-3bfa102e5b70",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1\t{\"ts\":\"2020-06-18T10:44:13\",\n",
      "\"logged_in\":{\"username\":\"foo\"},\n",
      "\"connection\":{\"addr\":\"1.2.3.4\",\"port\":5678}}\n",
      "2\t{\"ts\":\"2020-06-18T10:44:15\",\n",
      "\"registered\":{\"username\":\"bar\",\"email\":\"bar@example.com\"},\n",
      "\"connection\":{\"addr\":\"2.3.4.5\",\"port\":6789}}\n",
      "3\t{\"ts\":\"2020-06-18T10:44:16\",\n",
      "\"logged_out\":{\"username\":\"foo\"},\n",
      "\"connection\":{\"addr\":\"1.2.3.4\",\"port\":5678}}\n",
      "4\t{\"ts\":\"2020-06-18T10:47:22\",\n",
      "\"registered\":{\"username\":\"baz\",\"email\":\"baz@example.net\"},\n",
      "\"connection\":{\"addr\":\"3.4.5.6\",\"port\":7890}}\n"
     ]
    }
   ],
1684
1685
1686
1687
1688
1689
1690
   "source": [
    "%%bash\n",
    "cat -n ../data/jsonlines.log | fmt -w55 | tr -d \" \""
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1691
   "execution_count": 47,
1692
1693
   "id": "1d36dcec-aaba-4183-bbae-7a8a7e47c6d1",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{\"username\":\"bar\",\"email\":\"bar@example.com\"}\n",
      "{\"username\":\"baz\",\"email\":\"baz@example.net\"}\n"
     ]
    }
   ],
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
   "source": [
    "%%bash\n",
    "# Extract registrations\n",
    "grep \"registered\" ../data/jsonlines.log |\n",
    "    sed 's/^.*registered\"://' |\n",
    "    sed 's/}.*/}/'"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1714
   "execution_count": 48,
1715
1716
   "id": "27e51024-4202-414e-97f0-d3f9422b14d9",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{\n",
      "  \"username\": \"bar\",\n",
      "  \"email\": \"bar@example.com\"\n",
      "}\n",
      "{\n",
      "  \"username\": \"baz\",\n",
      "  \"email\": \"baz@example.net\"\n",
      "}\n"
     ]
    }
   ],
1733
1734
1735
1736
1737
1738
1739
   "source": [
    "%%bash\n",
    "jq '.registered | select(.username != null)' ../data/jsonlines.log"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1740
   "execution_count": 49,
1741
1742
   "id": "e4c39a5d-1d0d-46a7-93e2-eecc85fd907a",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{'username': 'bar', 'email': 'bar@example.com'}\n",
      "{'username': 'baz', 'email': 'baz@example.net'}\n"
     ]
    }
   ],
1753
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1754
    "with open(os.path.join(data_dir, \"jsonlines.log\")) as log:\n",
1755
1756
    "    for line in log:\n",
    "        record = json.loads(line)\n",
Eva Zangerle's avatar
Eva Zangerle committed
1757
1758
1759
    "        if \"registered\" in record:\n",
    "            user = record[\"registered\"]\n",
    "            if \"username\" in user:\n",
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
    "                print(user)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aa05c95f-f47e-4df5-8048-06491f74df49",
   "metadata": {},
   "source": [
    "### GeoJSON"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "67fada7f-4511-4090-a464-d3d7699fbfc3",
   "metadata": {},
   "source": [
    "This example is taken from CleanData and aims to showcase heavily nested JSON data."
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1781
   "execution_count": 50,
1782
1783
   "id": "9eb0be7b-393b-4923-a0be-ad9f09323028",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
   "outputs": [
    {
     "data": {
      "text/plain": [
       "dict_keys(['type', 'features'])"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
1796
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1797
1798
1799
    "with open(\n",
    "    os.path.join(data_dir, \"gz_2010_us_050_00_20m.json\"), encoding=\"ISO-8859-1\"\n",
    ") as fh:\n",
1800
1801
1802
1803
1804
1805
1806
    "    counties = json.load(fh)\n",
    "\n",
    "counties.keys()"
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1807
   "execution_count": 51,
1808
1809
   "id": "0b496dba-01cb-488f-8f4b-2775d3f64b93",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
   "outputs": [
    {
     "data": {
      "text/plain": [
       "('FeatureCollection', list, 3221)"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
1822
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1823
1824
    "# inspect contents\n",
    "counties[\"type\"], type(counties[\"features\"]), len(counties[\"features\"])"
1825
1826
1827
1828
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1829
   "execution_count": 52,
1830
1831
   "id": "d872bf8a-4e95-41f2-9fb6-d6713294e654",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'type': 'Feature',\n",
       " 'properties': {'GEO_ID': '0500000US19153',\n",
       "  'STATE': '19',\n",
       "  'COUNTY': '153',\n",
       "  'NAME': 'Polk',\n",
       "  'LSAD': 'County',\n",
       "  'CENSUSAREA': 573.795},\n",
       " 'geometry': {'type': 'Polygon',\n",
       "  'coordinates': [[[-93.328614, 41.507824],\n",
       "    [-93.328486, 41.49134],\n",
       "    [-93.328407, 41.490921],\n",
       "    [-93.41226, 41.505549],\n",
       "    [-93.790612, 41.511916],\n",
       "    [-93.814282, 41.600448],\n",
       "    [-93.815527, 41.863419],\n",
       "    [-93.698032, 41.86337],\n",
       "    [-93.347933, 41.863104],\n",
       "    [-93.348681, 41.600999],\n",
       "    [-93.328614, 41.507824]]]}}"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
1862
1863
   "source": [
    "# example\n",
Eva Zangerle's avatar
Eva Zangerle committed
1864
    "counties[\"features\"][999]"
1865
1866
1867
1868
   ]
  },
  {
   "cell_type": "code",
Eva Zangerle's avatar
Eva Zangerle committed
1869
   "execution_count": 53,
1870
1871
   "id": "e711adda-ad55-49b0-a8ac-5ccd92d34233",
   "metadata": {},
Eva Zangerle's avatar
Eva Zangerle committed
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
   "outputs": [
    {
     "data": {
      "image/png": "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Pj6e+vp6IiIi6NOnD1arlezsbFavXs26devOq9v8dAgPD5elTE/Ehg0bSEhIkMVQFBcPynArFKeBEIL4+HgGDRrEfffd16om+akEIDXHbrczevRoKaF5IprP/B0OBw888ADdu3dHCMGtt97a4sc7JiaGmTNn8vDDD2MymRgwYABmsxmLxUJqaioDBw40KHyBN8I5OjqakJCQ824MUlNTGTFihIwcB6/gTEpKCpdffjlJSUnExcURHBxMcHAwXbt2ZfLkyVK5rbCwsIXO/IWOyWRi8ODBshoceL00bcVdLFmy5Li15BXtE3G6ilDnkgEDBmjNtY0VigsJj8fDPffcI0s0zpgxw6D1fbqUl5fLH15N09A0jf/+979omibTyjRNo3///obZY1RUlFzPLiwsNJQZff/993nyySe58cYbuf/++6W7WNM0Vq5cSVxcnEz3WrVqFb/97W8xm828++67pKWl0blz5wuutnNhYSH5+fl069aN4OBg6urq+PjjjxkxYkSLQVV1dbWsv52cnExKSsr5aPJpo0fyHzp0iEcffZSYmBg+//zzVo+dOHEiHTt25He/+127WhZQgBBik6ZprSo2KcOtUJwh6uvreeedd1i7di1PPfVUi1rSp8PBgwd577335GuHw8F9993X4rhPPvnEkFsdExPTokIXwPz585kzZw6JiYksXrzYYLRffvllXn31Ve677z4GDhwoz/n444+ZMmWKnNUGBQWRmJh4RsRkzhR6/XB/f/8TegIaGxupq6tDCHFK2uMXIl999RXgXdf/29/+Jgd59fX1mEwmRo0aRW5uLldeeaUhRkBx4XM8w62C0xSKM4TNZuO2227jtttuO2PvGR4ejsVikbOstoxS8+2tDciXLl3KnDlzAO9sbenSpfTr14+vvvqKqqoqXn31VQDeeustBg8eLGfw119/vSENqbq6mkOHDsnqWxcCQogTFgzR0TSNoKCgC6btP4aBAwfKymp/+tOfpKreggULOHTokBTfycvLO29tVJx5lOFWKC5gQkJCGD16NF9++eWPfq/u3bsb0oNee+01amtrOXr0KBEREXJfeXk5n3/+ucz7bs3AVVdXU1tbS2Bg4I9u17nmXCumnU18+9/lcrXI9Q4KCiI2Npbt27fz5z//mVtuuYXIyEgKCgoICwszBCQq2g/KcCsUFzjHi1xvi+Yzbk3T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\n",
      "text/plain": [
       "<Figure size 576x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
1886
   "source": [
Eva Zangerle's avatar
Eva Zangerle committed
1887
    "# plot\n",
1888
1889