Guest User

Untitled

a guest
Jul 19th, 2018
385
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.94 KB | None | 0 0
  1. {
  2. "cells": [
  3. {
  4. "metadata": {},
  5. "cell_type": "markdown",
  6. "source": "# Overview\n## Instuctions\n1. Create a .py file to record script for this exercise\n2. Read text carefully\n3. Copy and run pre-written code below, and finish the script shown as empty or incomplete code blocks in between<br>\n\n### Problem Statement\n\nThe team would like to do analysis on station/region performance data, currently available in CSD Server\nHowever, some data manipulation and aggregation are needed to prepare such a master table\nCreate master table to house data, and manually populate data that's missing in server\nMajor steps in this process include:\n0. (initialization)\n1. Pull data\n2. Create helpful variables\n3. Create a base table\n4. Clean up the server data, aggregation\n5. Insert everything into base table to get master data\n\n### Data information\n\n__sptf_raw__: data pulled from the server, contains historical performance data for each airport and selective parent regions\n\n note 1: each airport has four different levels of region - Subregion2, Subregion, Region and Region2, each row contains performance data for either an airport or a region, but not all regions are displayed.\n \n note 2: Actual and goal columns are calculated by dividing measure_ and goal_ numerator and denominator, and score is assigned based on bucketof gap to goal.\n \n note 3: All region-level data could be calculated by aggregating measure/goal numerators and denominators of subordinate airports/regions\n\n__AO_Structure__: complete region structure for each airport\n\n__metrics_info__: a glossary of performance metrics and relevant information"
  7. },
  8. {
  9. "metadata": {},
  10. "cell_type": "markdown",
  11. "source": "# Let's get started!\n## 0. Initialzation\nChange directory using %cd C://... <br>\nImport the following packages<br>\n- _numpy_<br>\n- _pandas_<br>\n- _pyodbc_<br>\n- _product_ function from _itertools_ package<br>"
  12. },
  13. {
  14. "metadata": {
  15. "trusted": true
  16. },
  17. "cell_type": "code",
  18. "source": "",
  19. "execution_count": null,
  20. "outputs": []
  21. },
  22. {
  23. "metadata": {},
  24. "cell_type": "markdown",
  25. "source": "## 1. Pull data"
  26. },
  27. {
  28. "metadata": {
  29. "trusted": true
  30. },
  31. "cell_type": "code",
  32. "source": "# Set configuration for SQL connection\nSQL_cnxn = pyodbc.connect('Trusted_Connection=yes', driver = '{SQL Server}',server = 'VCLD16GDACOSI01\\\\ACODEV01', database = 'Cust_Serv_Del')\n\n# Pull data by reading and executing local query files, using with ... as ... keyword to ensure files are properly closed after use\nwith open('Base table query.sql','r') as query:\n sptf_raw = pd.read_sql_query(query.read(),SQL_cnxn)",
  33. "execution_count": 3,
  34. "outputs": []
  35. },
  36. {
  37. "metadata": {},
  38. "cell_type": "markdown",
  39. "source": "__Note__<br>\nIt is a good practice to always open file using with...as..., which terminates connection to the file immediately\nafter the operation is complete and thus avoid unwanted result while saving memory space <br><br>\nNow, replicate the query above for AO structure.sql, save the table as AO_Structure"
  40. },
  41. {
  42. "metadata": {
  43. "trusted": true
  44. },
  45. "cell_type": "code",
  46. "source": "",
  47. "execution_count": null,
  48. "outputs": []
  49. },
  50. {
  51. "metadata": {
  52. "trusted": true
  53. },
  54. "cell_type": "code",
  55. "source": "#close connection to database when done\nSQL_cnxn.close() ",
  56. "execution_count": null,
  57. "outputs": []
  58. },
  59. {
  60. "metadata": {},
  61. "cell_type": "markdown",
  62. "source": "## 2. Create helpful variables"
  63. },
  64. {
  65. "metadata": {
  66. "scrolled": true,
  67. "trusted": true
  68. },
  69. "cell_type": "code",
  70. "source": "prev_month = 5\ncurrent_month = 6\nprev_year = 2017\ncurrent_year = 2018",
  71. "execution_count": 8,
  72. "outputs": []
  73. },
  74. {
  75. "metadata": {},
  76. "cell_type": "markdown",
  77. "source": "use read_csv() from pandas package to load a table named metrics_info.csv, save as a variable called metrics_info, which is shown below"
  78. },
  79. {
  80. "metadata": {
  81. "trusted": true,
  82. "scrolled": true
  83. },
  84. "cell_type": "code",
  85. "source": "metrics_info.head(5)",
  86. "execution_count": 13,
  87. "outputs": [
  88. {
  89. "output_type": "display_data",
  90. "data": {
  91. "application/vnd.jupyter.widget-view+json": {
  92. "version_major": 2,
  93. "version_minor": 0,
  94. "model_id": "6c08c3d54a2e494c920b87a2f2c7c03b"
  95. }
  96. },
  97. "metadata": {}
  98. }
  99. ]
  100. },
  101. {
  102. "metadata": {
  103. "trusted": true
  104. },
  105. "cell_type": "code",
  106. "source": "",
  107. "execution_count": null,
  108. "outputs": []
  109. },
  110. {
  111. "metadata": {},
  112. "cell_type": "markdown",
  113. "source": "## 3. Create a base table"
  114. },
  115. {
  116. "metadata": {
  117. "scrolled": true,
  118. "trusted": true
  119. },
  120. "cell_type": "markdown",
  121. "source": "### Component 1/3: Year & Month combinations\nCreate a dataframe named *base_table_time* that contains all combination of current/previous years and months, then add a new column to the right named \"key\" where each row equals to 1<br>\nHint: use pandas.DataFrame(list(product(...),...), .......) plus other methods<br>\nYour result should look like this:\n"
  122. },
  123. {
  124. "metadata": {
  125. "trusted": true,
  126. "scrolled": true
  127. },
  128. "cell_type": "code",
  129. "source": "base_table_time.tail(8) # example of the last 8 rows of this table",
  130. "execution_count": 12,
  131. "outputs": [
  132. {
  133. "output_type": "display_data",
  134. "data": {
  135. "application/vnd.jupyter.widget-view+json": {
  136. "version_major": 2,
  137. "version_minor": 0,
  138. "model_id": "3361437415ab4613903731d7a761fbe2"
  139. }
  140. },
  141. "metadata": {}
  142. }
  143. ]
  144. },
  145. {
  146. "metadata": {
  147. "trusted": true
  148. },
  149. "cell_type": "code",
  150. "source": "",
  151. "execution_count": null,
  152. "outputs": []
  153. },
  154. {
  155. "metadata": {
  156. "trusted": true
  157. },
  158. "cell_type": "markdown",
  159. "source": "### Component 2/3: stations & regions\nThe following code block creates a table of all station and region names, along with flags "
  160. },
  161. {
  162. "metadata": {
  163. "trusted": true
  164. },
  165. "cell_type": "code",
  166. "source": "base_table_stations = pd.concat([AO_Structure[['Station','Region2']].assign(Category = 'Line Station'),\n\t\t\t\t\t\t\t\t AO_Structure[['Subregion','Region2']].assign(Category = 'Subregion').rename(columns={'Subregion':'Station'}),\n\t\t\t\t\t\t\t\t AO_Structure[['Subregion2','Region2']].assign(Category = 'Subregion2').rename(columns={'Subregion2':'Station'}),\n\t\t\t\t\t\t\t\t AO_Structure[['Region','Region2']].assign(Category = 'Region').rename(columns={'Region':'Station'}),\n\t\t\t\t\t\t\t\t AO_Structure[['Region2']].assign(Category = 'Region2',Station = AO_Structure['Region2']),\n\t\t\t\t\t\t\t\t pd.DataFrame({'Station':'SYSTEM','Region2':'SYSTEM','Category':'SYSTEM'},index=[0])], ignore_index=True, sort=False)\\\n.drop_duplicates(subset='Station')\\\n.query('Station not in [\"UNK\",\"UNKNOWN\"]')\\\n.assign(key=1)\n\nbase_table_stations['Station'] = base_table_stations.apply(\n lambda x: 'INTERNATIONAL' if x.Station == 'INTERNATIONAL LINE STATIONS' else (\n 'DOMESTIC' if x.Station == 'DOMESTIC LINE AND REGIONAL STATIONS' else x.Station)\n ,axis=1)\nbase_table_stations['Category'] = base_table_stations.apply(\n lambda x: 'UNITED GROUND EXRPESS' if x.Station == 'UNITED GROUND EXPRESS' else (\n 'Hub' if x.Station in ['LAX','SFO','IAH','DEN','ORD','IAD','EWR'] else (\n x.Station if x.Station in ['DEN METRO','EWR METRO'] else x.Category))\n ,axis=1)",
  167. "execution_count": null,
  168. "outputs": []
  169. },
  170. {
  171. "metadata": {
  172. "trusted": true
  173. },
  174. "cell_type": "code",
  175. "source": "base_table_stations.head(5) # example",
  176. "execution_count": 14,
  177. "outputs": [
  178. {
  179. "output_type": "display_data",
  180. "data": {
  181. "application/vnd.jupyter.widget-view+json": {
  182. "version_major": 2,
  183. "version_minor": 0,
  184. "model_id": "73cd07aa03a5498e82357af5d39ac1af"
  185. }
  186. },
  187. "metadata": {}
  188. }
  189. ]
  190. },
  191. {
  192. "metadata": {},
  193. "cell_type": "markdown",
  194. "source": "Now, replicate the last line of code in the above block to apply the following change<br><br>\nUpdate *Dom_Intl* column:<br>\nif station is either __SYSTEM__ or __UNITED GROUND EXPRESS__, use station name for Dom_Intl column<br>\nif station name is in one of the seven hubs, use \"Hub\" for Dom_Intl column<br>\nif Region2 is __INTERNATIONAL LINE STATIONS__, use \"International\", otherwise \"Domestic\""
  195. },
  196. {
  197. "metadata": {
  198. "trusted": true
  199. },
  200. "cell_type": "code",
  201. "source": "",
  202. "execution_count": null,
  203. "outputs": []
  204. },
  205. {
  206. "metadata": {},
  207. "cell_type": "markdown",
  208. "source": "### Component 3/3: data points\nCreate a single column dataframe called *base_table_measures* with column name \"variable\" and rows ['Actual','Goal','Score','MEASURE_NUM','MEASURE_DEN','GOAL_NUM','GOAL_DEN']<br>\nalso add another column named \"key\" where each row equals to 1"
  209. },
  210. {
  211. "metadata": {
  212. "trusted": true
  213. },
  214. "cell_type": "code",
  215. "source": "base_table_measures.head(3) # example",
  216. "execution_count": 16,
  217. "outputs": [
  218. {
  219. "output_type": "display_data",
  220. "data": {
  221. "application/vnd.jupyter.widget-view+json": {
  222. "version_major": 2,
  223. "version_minor": 0,
  224. "model_id": "4d537444fadf457396906a68e7ef6126"
  225. }
  226. },
  227. "metadata": {}
  228. }
  229. ]
  230. },
  231. {
  232. "metadata": {
  233. "trusted": true
  234. },
  235. "cell_type": "code",
  236. "source": "",
  237. "execution_count": null,
  238. "outputs": []
  239. },
  240. {
  241. "metadata": {},
  242. "cell_type": "markdown",
  243. "source": "### Stitch base table together\nCreate a table called base_table by joining all base table components together using .merge(table,on='column name'), specifically: <br>\n 1. base_table_time\n 2. *Metric_Name* and *Metric_Type* columsn from metrics_info Attn: you need to add a \"key\" column for join operation to be successful\n 3. base_table_statins Attn: please drop the *Region2* column before joining since it is no longer needed__\n 4. base_table_measures\nFinally, drop the *key* column which is used only for joining <br>"
  244. },
  245. {
  246. "metadata": {
  247. "trusted": true
  248. },
  249. "cell_type": "code",
  250. "source": "",
  251. "execution_count": null,
  252. "outputs": []
  253. },
  254. {
  255. "metadata": {
  256. "trusted": true
  257. },
  258. "cell_type": "code",
  259. "source": "# Remove individual parts no longer used\n%reset_selective -f base_table_\n\nbase_table.head(5) # example",
  260. "execution_count": 17,
  261. "outputs": [
  262. {
  263. "output_type": "display_data",
  264. "data": {
  265. "application/vnd.jupyter.widget-view+json": {
  266. "version_major": 2,
  267. "version_minor": 0,
  268. "model_id": "c4b59c0dfbf047649233b834deed9215"
  269. }
  270. },
  271. "metadata": {}
  272. }
  273. ]
  274. },
  275. {
  276. "metadata": {},
  277. "cell_type": "markdown",
  278. "source": "## 4. Clean up the server data, aggregation"
  279. },
  280. {
  281. "metadata": {},
  282. "cell_type": "markdown",
  283. "source": "Complete the following tasks to clean the raw data (sptf_raw) and save as a new variable called sptf_cleaned\n1. drop rows where *Station* column is NaN, hint: __dropna()__\n2. since the metric names in server is different from final metric name used, we need to swap metric name by left joining *Metric_Name, Metric_Type and Name_in_Server* columns from metrics_info, and drop *Name in Server* column after use.\n3. remove additional rows if *Year, Month, Metric_Name, Station* columns are duplicated\n4. since the *Month* column has string datatype in server, we need to convert it to integer, hint: __astype()__\n5. database server also has all *Actual and Goal* columns in percentage numbers except for APU and MBR, we need to convert them to decimals, hint: __use apply() with a function similar to that in base_table_stations__\n6. create a new variable called sptf_cleaned_long (Good read: wide vs long data format), hint: __melt()__"
  284. },
  285. {
  286. "metadata": {
  287. "trusted": true
  288. },
  289. "cell_type": "code",
  290. "source": "# example of sptf_cleaned_long\nsptf_cleaned_long.head(8)",
  291. "execution_count": 18,
  292. "outputs": [
  293. {
  294. "output_type": "display_data",
  295. "data": {
  296. "application/vnd.jupyter.widget-view+json": {
  297. "version_major": 2,
  298. "version_minor": 0,
  299. "model_id": "afbbecf0fdbd4ca39190da39b0d9db3e"
  300. }
  301. },
  302. "metadata": {}
  303. }
  304. ]
  305. },
  306. {
  307. "metadata": {
  308. "trusted": true
  309. },
  310. "cell_type": "code",
  311. "source": "",
  312. "execution_count": 9,
  313. "outputs": []
  314. },
  315. {
  316. "metadata": {},
  317. "cell_type": "markdown",
  318. "source": "Now we would like to get data for all regions, which only exist partially in server. Start by preparing a table of only stations for aggregation as shown below<br>\nYou need to join sptf_cleaned with AO_Structure table, and drop *Actual, Goal and Score* columns<br><br>\nHint: to select only stations and not regions, use logical condition *Station*.str.len() == 3"
  319. },
  320. {
  321. "metadata": {
  322. "trusted": true
  323. },
  324. "cell_type": "code",
  325. "source": "temp_stations.head(5)",
  326. "execution_count": 19,
  327. "outputs": [
  328. {
  329. "output_type": "display_data",
  330. "data": {
  331. "application/vnd.jupyter.widget-view+json": {
  332. "version_major": 2,
  333. "version_minor": 0,
  334. "model_id": "76aac5f50c9246dbbee519e2524e389d"
  335. }
  336. },
  337. "metadata": {}
  338. }
  339. ]
  340. },
  341. {
  342. "metadata": {
  343. "trusted": true
  344. },
  345. "cell_type": "code",
  346. "source": "",
  347. "execution_count": 10,
  348. "outputs": []
  349. },
  350. {
  351. "metadata": {},
  352. "cell_type": "markdown",
  353. "source": "Then, use a for loop to aggregate the table at 4 different levels, i.e. Subregion, Subregion2, Region, Region2<br>\nComplete the following code block"
  354. },
  355. {
  356. "metadata": {
  357. "trusted": true
  358. },
  359. "cell_type": "code",
  360. "source": "# Create an empty variable to store aggregated tables from for loop\ntemp_aggr = []\n\n# For loop\nfor ? in ?:\n temp = x.groupby().aggregation()....\n temp_aggr.append(temp)\n \n# Convert the result from for loop into a dataframe\ntemp_aggr = pd.concat(temp_aggr)",
  361. "execution_count": null,
  362. "outputs": []
  363. },
  364. {
  365. "metadata": {},
  366. "cell_type": "markdown",
  367. "source": "Also do the following to aggregated table\n1. drop duplicates in *Year, Month, Metric_Name, Station* columns\n2. convert the table to long format\n3. If station name is 'INTERNATIONAL LINE STATIONS', change to INTERNATIONAL, same for DOMESTIC LINE AND REGIONAL STATIONS\n\n<br> Final table should look like:\n"
  368. },
  369. {
  370. "metadata": {
  371. "trusted": true
  372. },
  373. "cell_type": "code",
  374. "source": "temp_aggr.head(10)",
  375. "execution_count": 20,
  376. "outputs": [
  377. {
  378. "output_type": "display_data",
  379. "data": {
  380. "application/vnd.jupyter.widget-view+json": {
  381. "version_major": 2,
  382. "version_minor": 0,
  383. "model_id": "8e9a6135d0f04692aef91034930944a3"
  384. }
  385. },
  386. "metadata": {}
  387. }
  388. ]
  389. },
  390. {
  391. "metadata": {
  392. "trusted": true
  393. },
  394. "cell_type": "code",
  395. "source": "",
  396. "execution_count": null,
  397. "outputs": []
  398. },
  399. {
  400. "metadata": {},
  401. "cell_type": "markdown",
  402. "source": "## 5. Insert everything into base table to get master data\nAt this point, we have three major tables: __base_table__, __sptf_cleaned_long__ and __temp_aggr__, where __temp_aggr__ and __sptf_cleaned_long__ have overlaps but overall different data points<br>\nWe would like to merge them into the base table with the following steps\n1. left join __sptf_cleaned_long__ and __temp_aggr__ to __base_table__, only adding *value* column, store in a new variable called __data_long__\n2. Because aggregation returns 0 if there's nothing to aggregate, these values should be coerce to NaN<br>\nForce *value* column from __temp_aggr__ table to be NaN if: Metric_Type is either Safe or Efficient AND *Category* column of a station is not Line Station\n3. If *value* column from __sptf_cleaned_long__ table is NaN, replace with *value* column from __temp_aggr__ table\n4. Drop *value* column from __temp_aggr__ table, keep that of __sptf_cleaned_long__ table and rename column to *value*\n5. create a new data table named __data_wide__ that is the wide format version of __data_long__"
  403. },
  404. {
  405. "metadata": {
  406. "trusted": true
  407. },
  408. "cell_type": "code",
  409. "source": "",
  410. "execution_count": null,
  411. "outputs": []
  412. },
  413. {
  414. "metadata": {},
  415. "cell_type": "markdown",
  416. "source": "The final table should look like this"
  417. },
  418. {
  419. "metadata": {
  420. "trusted": true
  421. },
  422. "cell_type": "code",
  423. "source": "data_w.query('Year == 2018 and Month == 6 and Metric_Name == \"MBR\" and Station == \"SYSTEM\"')",
  424. "execution_count": 21,
  425. "outputs": [
  426. {
  427. "output_type": "display_data",
  428. "data": {
  429. "application/vnd.jupyter.widget-view+json": {
  430. "version_major": 2,
  431. "version_minor": 0,
  432. "model_id": "38f5966584804a17ad594d270568b105"
  433. }
  434. },
  435. "metadata": {}
  436. }
  437. ]
  438. }
  439. ],
  440. "metadata": {
  441. "kernelspec": {
  442. "name": "python3",
  443. "display_name": "Python 3",
  444. "language": "python"
  445. },
  446. "language_info": {
  447. "name": "python",
  448. "version": "3.6.5",
  449. "mimetype": "text/x-python",
  450. "codemirror_mode": {
  451. "name": "ipython",
  452. "version": 3
  453. },
  454. "pygments_lexer": "ipython3",
  455. "nbconvert_exporter": "python",
  456. "file_extension": ".py"
  457. },
  458. "nbTranslate": {
  459. "hotkey": "alt-t",
  460. "sourceLang": "en",
  461. "targetLang": "fr",
  462. "displayLangs": [
  463. "*"
  464. ],
  465. "langInMainMenu": true,
  466. "useGoogleTranslate": true
  467. },
  468. "toc": {
  469. "nav_menu": {},
  470. "number_sections": false,
  471. "sideBar": false,
  472. "skip_h1_title": false,
  473. "base_numbering": 1,
  474. "title_cell": "Table of Contents",
  475. "title_sidebar": "Contents",
  476. "toc_cell": false,
  477. "toc_position": {},
  478. "toc_section_display": false,
  479. "toc_window_display": false
  480. },
  481. "varInspector": {
  482. "window_display": false,
  483. "cols": {
  484. "lenName": 16,
  485. "lenType": 16,
  486. "lenVar": 40
  487. },
  488. "kernels_config": {
  489. "python": {
  490. "library": "var_list.py",
  491. "delete_cmd_prefix": "del ",
  492. "delete_cmd_postfix": "",
  493. "varRefreshCmd": "print(var_dic_list())"
  494. },
  495. "r": {
  496. "library": "var_list.r",
  497. "delete_cmd_prefix": "rm(",
  498. "delete_cmd_postfix": ") ",
  499. "varRefreshCmd": "cat(var_dic_list()) "
  500. }
  501. },
  502. "types_to_exclude": [
  503. "module",
  504. "function",
  505. "builtin_function_or_method",
  506. "instance",
  507. "_Feature"
  508. ],
  509. "oldHeight": 236.4,
  510. "position": {
  511. "left": "1038px",
  512. "top": "76px",
  513. "width": "350px",
  514. "height": "258px",
  515. "right": "20px"
  516. },
  517. "varInspector_section_display": "block"
  518. },
  519. "widgets": {
  520. "application/vnd.jupyter.widget-state+json": {
  521. "version_major": 2,
  522. "version_minor": 0,
  523. "state": {
  524. "9a529850ecb84ff08bbf2ed16ceef2a2": {
  525. "model_name": "LayoutModel",
  526. "model_module": "@jupyter-widgets/base",
  527. "model_module_version": "*",
  528. "state": {
  529. "_model_module_version": "*",
  530. "_view_module_version": "*"
  531. }
  532. },
  533. "5d7f8e2cc39648a68b369e0bfcbdbb79": {
  534. "model_name": "TableDisplayModel",
  535. "model_module": "beakerx",
  536. "model_module_version": "*",
  537. "state": {
  538. "layout": "IPY_MODEL_9a529850ecb84ff08bbf2ed16ceef2a2",
  539. "model": {
  540. "alignmentForColumn": {},
  541. "alignmentForType": {},
  542. "cellHighlighters": [],
  543. "columnNames": [
  544. null,
  545. "Metric_Name",
  546. "Metric_Type",
  547. "Weight",
  548. "Name_in_Macro",
  549. "Name_in_Server",
  550. "Direction"
  551. ],
  552. "columnOrder": [],
  553. "columnsFrozen": {},
  554. "columnsFrozenRight": {},
  555. "columnsVisible": {},
  556. "contextMenuItems": [],
  557. "contextMenuTags": {},
  558. "fontColor": [],
  559. "hasDoubleClickAction": false,
  560. "hasIndex": "true",
  561. "headersVertical": false,
  562. "rendererForColumn": {},
  563. "rendererForType": {},
  564. "stringFormatForColumn": {},
  565. "stringFormatForType": {},
  566. "subtype": "ListOfMaps",
  567. "tooManyRows": false,
  568. "tooltips": [],
  569. "type": "TableDisplay",
  570. "types": [
  571. "integer",
  572. "string",
  573. "string",
  574. "double",
  575. "string",
  576. "string",
  577. "string"
  578. ],
  579. "values": [
  580. [
  581. "0",
  582. "Damages",
  583. "Safe",
  584. "0.1",
  585. "Damages",
  586. "Damages",
  587. "Negative"
  588. ],
  589. [
  590. "1",
  591. "LTI",
  592. "Safe",
  593. "0.075",
  594. "LTI",
  595. "LTI",
  596. "Negative"
  597. ],
  598. [
  599. "2",
  600. "OSHA",
  601. "Safe",
  602. "0.025",
  603. "OSHA",
  604. "OSHA",
  605. "Negative"
  606. ],
  607. [
  608. "3",
  609. "Airport BEAT",
  610. "Caring",
  611. "0.1",
  612. "Beat Score",
  613. "Beat",
  614. "Positive"
  615. ],
  616. [
  617. "4",
  618. "APU",
  619. "Caring",
  620. "0.05",
  621. "APU_BURN",
  622. "APU_BURN",
  623. "Negative"
  624. ],
  625. [
  626. "5",
  627. "PAX Door Variance",
  628. "Caring",
  629. "0.05",
  630. "PAX Door Variance",
  631. "Unmet",
  632. "Negative"
  633. ],
  634. [
  635. "6",
  636. "Misconnects",
  637. "Caring",
  638. "0.05",
  639. "MISCONNECTS",
  640. "Misconnects",
  641. "Negative"
  642. ],
  643. [
  644. "7",
  645. "Bags to claim U25",
  646. "Caring",
  647. "0.05",
  648. "ALL BAGS TO CLAIM U25",
  649. "Bags to claim",
  650. "Positive"
  651. ],
  652. [
  653. "8",
  654. "MBR",
  655. "Caring",
  656. "0.1",
  657. "MBR",
  658. "MBR",
  659. "Negative"
  660. ],
  661. [
  662. "9",
  663. "STAR D00",
  664. "Dependable",
  665. "0.1",
  666. "STAR D0-PCT",
  667. "STAR D00",
  668. "Positive"
  669. ],
  670. [
  671. "10",
  672. "D00",
  673. "Dependable",
  674. "0.1",
  675. "D0-PCT",
  676. "D00",
  677. "Positive"
  678. ],
  679. [
  680. "11",
  681. "AO Delays",
  682. "Dependable",
  683. "0.05",
  684. "AO DELAY PCT",
  685. "AO DELAYS",
  686. "Negative"
  687. ],
  688. [
  689. "12",
  690. "Quick Turn Success",
  691. "Dependable",
  692. "0.05",
  693. "MST SUCCESS PCT",
  694. "MST Success",
  695. "Positive"
  696. ],
  697. [
  698. "13",
  699. "CPEP",
  700. "Efficient",
  701. "0.075",
  702. "CPEP",
  703. "CPEP",
  704. "Negative"
  705. ],
  706. [
  707. "14",
  708. "ATW Productivity",
  709. "Efficient",
  710. "0.0125",
  711. "ATW",
  712. "ATW",
  713. "Negative"
  714. ],
  715. [
  716. "15",
  717. "BTW Productivity",
  718. "Efficient",
  719. "0.0125",
  720. "BTW",
  721. "BTW",
  722. "Negative"
  723. ],
  724. [
  725. "16",
  726. "Overall Score",
  727. "Overall Score",
  728. "1.0",
  729. "Overall Score",
  730. "Overall Score",
  731. "nan"
  732. ],
  733. [
  734. "17",
  735. "PULSE",
  736. "Safe - old",
  737. "nan",
  738. "PULSE",
  739. "AO PULSE",
  740. "Positive"
  741. ]
  742. ]
  743. }
  744. }
  745. },
  746. "c18f63503c3e4a82b357139e605057af": {
  747. "model_name": "LayoutModel",
  748. "model_module": "@jupyter-widgets/base",
  749. "model_module_version": "*",
  750. "state": {
  751. "_model_module_version": "*",
  752. "_view_module_version": "*"
  753. }
  754. },
  755. "9a1258b6ff57477ca9a347817b57ca2d": {
  756. "model_name": "TableDisplayModel",
  757. "model_module": "beakerx",
  758. "model_module_version": "*",
  759. "state": {
  760. "layout": "IPY_MODEL_c18f63503c3e4a82b357139e605057af",
  761. "model": {
  762. "alignmentForColumn": {},
  763. "alignmentForType": {},
  764. "cellHighlighters": [],
  765. "columnNames": [
  766. null,
  767. "Year",
  768. "Month",
  769. "key"
  770. ],
  771. "columnOrder": [],
  772. "columnsFrozen": {},
  773. "columnsFrozenRight": {},
  774. "columnsVisible": {},
  775. "contextMenuItems": [],
  776. "contextMenuTags": {},
  777. "fontColor": [],
  778. "hasDoubleClickAction": false,
  779. "hasIndex": "true",
  780. "headersVertical": false,
  781. "rendererForColumn": {},
  782. "rendererForType": {},
  783. "stringFormatForColumn": {},
  784. "stringFormatForType": {},
  785. "subtype": "ListOfMaps",
  786. "tooManyRows": false,
  787. "tooltips": [],
  788. "type": "TableDisplay",
  789. "types": [
  790. "integer",
  791. "integer",
  792. "integer",
  793. "integer"
  794. ],
  795. "values": [
  796. [
  797. "0",
  798. "2017",
  799. "1",
  800. "1"
  801. ],
  802. [
  803. "1",
  804. "2017",
  805. "2",
  806. "1"
  807. ],
  808. [
  809. "2",
  810. "2017",
  811. "3",
  812. "1"
  813. ],
  814. [
  815. "3",
  816. "2017",
  817. "4",
  818. "1"
  819. ],
  820. [
  821. "4",
  822. "2017",
  823. "5",
  824. "1"
  825. ],
  826. [
  827. "5",
  828. "2017",
  829. "6",
  830. "1"
  831. ],
  832. [
  833. "6",
  834. "2017",
  835. "7",
  836. "1"
  837. ],
  838. [
  839. "7",
  840. "2017",
  841. "8",
  842. "1"
  843. ],
  844. [
  845. "8",
  846. "2017",
  847. "9",
  848. "1"
  849. ],
  850. [
  851. "9",
  852. "2017",
  853. "10",
  854. "1"
  855. ],
  856. [
  857. "10",
  858. "2017",
  859. "11",
  860. "1"
  861. ],
  862. [
  863. "11",
  864. "2017",
  865. "12",
  866. "1"
  867. ],
  868. [
  869. "12",
  870. "2018",
  871. "1",
  872. "1"
  873. ],
  874. [
  875. "13",
  876. "2018",
  877. "2",
  878. "1"
  879. ],
  880. [
  881. "14",
  882. "2018",
  883. "3",
  884. "1"
  885. ],
  886. [
  887. "15",
  888. "2018",
  889. "4",
  890. "1"
  891. ],
  892. [
  893. "16",
  894. "2018",
  895. "5",
  896. "1"
  897. ],
  898. [
  899. "17",
  900. "2018",
  901. "6",
  902. "1"
  903. ]
  904. ]
  905. }
  906. }
  907. },
  908. "1ac3e23f693e4bd7be6beb61853e9354": {
  909. "model_name": "LayoutModel",
  910. "model_module": "@jupyter-widgets/base",
  911. "model_module_version": "*",
  912. "state": {
  913. "_model_module_version": "*",
  914. "_view_module_version": "*"
  915. }
  916. },
  917. "3361437415ab4613903731d7a761fbe2": {
  918. "model_name": "TableDisplayModel",
  919. "model_module": "beakerx",
  920. "model_module_version": "*",
  921. "state": {
  922. "layout": "IPY_MODEL_1ac3e23f693e4bd7be6beb61853e9354",
  923. "model": {
  924. "alignmentForColumn": {},
  925. "alignmentForType": {},
  926. "cellHighlighters": [],
  927. "columnNames": [
  928. null,
  929. "Year",
  930. "Month",
  931. "key"
  932. ],
  933. "columnOrder": [],
  934. "columnsFrozen": {},
  935. "columnsFrozenRight": {},
  936. "columnsVisible": {},
  937. "contextMenuItems": [],
  938. "contextMenuTags": {},
  939. "fontColor": [],
  940. "hasDoubleClickAction": false,
  941. "hasIndex": "true",
  942. "headersVertical": false,
  943. "rendererForColumn": {},
  944. "rendererForType": {},
  945. "stringFormatForColumn": {},
  946. "stringFormatForType": {},
  947. "subtype": "ListOfMaps",
  948. "tooManyRows": false,
  949. "tooltips": [],
  950. "type": "TableDisplay",
  951. "types": [
  952. "integer",
  953. "integer",
  954. "integer",
  955. "integer"
  956. ],
  957. "values": [
  958. [
  959. "10",
  960. "2017",
  961. "11",
  962. "1"
  963. ],
  964. [
  965. "11",
  966. "2017",
  967. "12",
  968. "1"
  969. ],
  970. [
  971. "12",
  972. "2018",
  973. "1",
  974. "1"
  975. ],
  976. [
  977. "13",
  978. "2018",
  979. "2",
  980. "1"
  981. ],
  982. [
  983. "14",
  984. "2018",
  985. "3",
  986. "1"
  987. ],
  988. [
  989. "15",
  990. "2018",
  991. "4",
  992. "1"
  993. ],
  994. [
  995. "16",
  996. "2018",
  997. "5",
  998. "1"
  999. ],
  1000. [
  1001. "17",
  1002. "2018",
  1003. "6",
  1004. "1"
  1005. ]
  1006. ]
  1007. }
  1008. }
  1009. },
  1010. "9d8d8029e9b245a3844ab922b5a45b32": {
  1011. "model_name": "LayoutModel",
  1012. "model_module": "@jupyter-widgets/base",
  1013. "model_module_version": "*",
  1014. "state": {
  1015. "_model_module_version": "*",
  1016. "_view_module_version": "*"
  1017. }
  1018. },
  1019. "6c08c3d54a2e494c920b87a2f2c7c03b": {
  1020. "model_name": "TableDisplayModel",
  1021. "model_module": "beakerx",
  1022. "model_module_version": "*",
  1023. "state": {
  1024. "layout": "IPY_MODEL_9d8d8029e9b245a3844ab922b5a45b32",
  1025. "model": {
  1026. "alignmentForColumn": {},
  1027. "alignmentForType": {},
  1028. "cellHighlighters": [],
  1029. "columnNames": [
  1030. null,
  1031. "Metric_Name",
  1032. "Metric_Type",
  1033. "Weight",
  1034. "Name_in_Macro",
  1035. "Name_in_Server",
  1036. "Direction"
  1037. ],
  1038. "columnOrder": [],
  1039. "columnsFrozen": {},
  1040. "columnsFrozenRight": {},
  1041. "columnsVisible": {},
  1042. "contextMenuItems": [],
  1043. "contextMenuTags": {},
  1044. "fontColor": [],
  1045. "hasDoubleClickAction": false,
  1046. "hasIndex": "true",
  1047. "headersVertical": false,
  1048. "rendererForColumn": {},
  1049. "rendererForType": {},
  1050. "stringFormatForColumn": {},
  1051. "stringFormatForType": {},
  1052. "subtype": "ListOfMaps",
  1053. "tooManyRows": false,
  1054. "tooltips": [],
  1055. "type": "TableDisplay",
  1056. "types": [
  1057. "integer",
  1058. "string",
  1059. "string",
  1060. "double",
  1061. "string",
  1062. "string",
  1063. "string"
  1064. ],
  1065. "values": [
  1066. [
  1067. "0",
  1068. "Damages",
  1069. "Safe",
  1070. "0.1",
  1071. "Damages",
  1072. "Damages",
  1073. "Negative"
  1074. ],
  1075. [
  1076. "1",
  1077. "LTI",
  1078. "Safe",
  1079. "0.075",
  1080. "LTI",
  1081. "LTI",
  1082. "Negative"
  1083. ],
  1084. [
  1085. "2",
  1086. "OSHA",
  1087. "Safe",
  1088. "0.025",
  1089. "OSHA",
  1090. "OSHA",
  1091. "Negative"
  1092. ],
  1093. [
  1094. "3",
  1095. "Airport BEAT",
  1096. "Caring",
  1097. "0.1",
  1098. "Beat Score",
  1099. "Beat",
  1100. "Positive"
  1101. ],
  1102. [
  1103. "4",
  1104. "APU",
  1105. "Caring",
  1106. "0.05",
  1107. "APU_BURN",
  1108. "APU_BURN",
  1109. "Negative"
  1110. ]
  1111. ]
  1112. }
  1113. }
  1114. },
  1115. "d846568e5dee4efab67ed7ac31868464": {
  1116. "model_name": "LayoutModel",
  1117. "model_module": "@jupyter-widgets/base",
  1118. "model_module_version": "*",
  1119. "state": {
  1120. "_model_module_version": "*",
  1121. "_view_module_version": "*"
  1122. }
  1123. },
  1124. "73cd07aa03a5498e82357af5d39ac1af": {
  1125. "model_name": "TableDisplayModel",
  1126. "model_module": "beakerx",
  1127. "model_module_version": "*",
  1128. "state": {
  1129. "layout": "IPY_MODEL_d846568e5dee4efab67ed7ac31868464",
  1130. "model": {
  1131. "alignmentForColumn": {},
  1132. "alignmentForType": {},
  1133. "cellHighlighters": [],
  1134. "columnNames": [
  1135. null,
  1136. "Station",
  1137. "Region2",
  1138. "Category",
  1139. "key",
  1140. "Dom_Intl"
  1141. ],
  1142. "columnOrder": [],
  1143. "columnsFrozen": {},
  1144. "columnsFrozenRight": {},
  1145. "columnsVisible": {},
  1146. "contextMenuItems": [],
  1147. "contextMenuTags": {},
  1148. "fontColor": [],
  1149. "hasDoubleClickAction": false,
  1150. "hasIndex": "true",
  1151. "headersVertical": false,
  1152. "rendererForColumn": {},
  1153. "rendererForType": {},
  1154. "stringFormatForColumn": {},
  1155. "stringFormatForType": {},
  1156. "subtype": "ListOfMaps",
  1157. "tooManyRows": false,
  1158. "tooltips": [],
  1159. "type": "TableDisplay",
  1160. "types": [
  1161. "integer",
  1162. "string",
  1163. "string",
  1164. "string",
  1165. "integer",
  1166. "string"
  1167. ],
  1168. "values": [
  1169. [
  1170. "0",
  1171. "BOG",
  1172. "INTERNATIONAL LINE STATIONS",
  1173. "Line Station",
  1174. "1",
  1175. "International"
  1176. ],
  1177. [
  1178. "1",
  1179. "AUS",
  1180. "DOMESTIC LINE AND REGIONAL STATIONS",
  1181. "Line Station",
  1182. "1",
  1183. "Domestic"
  1184. ],
  1185. [
  1186. "2",
  1187. "OGG",
  1188. "DOMESTIC LINE AND REGIONAL STATIONS",
  1189. "Line Station",
  1190. "1",
  1191. "Domestic"
  1192. ],
  1193. [
  1194. "3",
  1195. "BHM",
  1196. "UNITED GROUND EXPRESS",
  1197. "Line Station",
  1198. "1",
  1199. "Domestic"
  1200. ],
  1201. [
  1202. "4",
  1203. "ROC",
  1204. "DOMESTIC LINE AND REGIONAL STATIONS",
  1205. "Line Station",
  1206. "1",
  1207. "Domestic"
  1208. ]
  1209. ]
  1210. }
  1211. }
  1212. },
  1213. "b7e52f318f3f4a89beaf5dfaa10e2ae4": {
  1214. "model_name": "LayoutModel",
  1215. "model_module": "@jupyter-widgets/base",
  1216. "model_module_version": "*",
  1217. "state": {
  1218. "_model_module_version": "*",
  1219. "_view_module_version": "*"
  1220. }
  1221. },
  1222. "4d537444fadf457396906a68e7ef6126": {
  1223. "model_name": "TableDisplayModel",
  1224. "model_module": "beakerx",
  1225. "model_module_version": "*",
  1226. "state": {
  1227. "layout": "IPY_MODEL_b7e52f318f3f4a89beaf5dfaa10e2ae4",
  1228. "model": {
  1229. "alignmentForColumn": {},
  1230. "alignmentForType": {},
  1231. "cellHighlighters": [],
  1232. "columnNames": [
  1233. "variable",
  1234. "key"
  1235. ],
  1236. "columnOrder": [],
  1237. "columnsFrozen": {},
  1238. "columnsFrozenRight": {},
  1239. "columnsVisible": {},
  1240. "contextMenuItems": [],
  1241. "contextMenuTags": {},
  1242. "fontColor": [],
  1243. "hasDoubleClickAction": false,
  1244. "headersVertical": false,
  1245. "rendererForColumn": {},
  1246. "rendererForType": {},
  1247. "stringFormatForColumn": {},
  1248. "stringFormatForType": {},
  1249. "subtype": "ListOfMaps",
  1250. "tooManyRows": false,
  1251. "tooltips": [],
  1252. "type": "TableDisplay",
  1253. "types": [
  1254. "string",
  1255. "integer"
  1256. ],
  1257. "values": [
  1258. [
  1259. "Actual",
  1260. "1"
  1261. ],
  1262. [
  1263. "Goal",
  1264. "1"
  1265. ],
  1266. [
  1267. "Score",
  1268. "1"
  1269. ]
  1270. ]
  1271. }
  1272. }
  1273. },
  1274. "f424372e752c476491f7ad57e2dc1791": {
  1275. "model_name": "LayoutModel",
  1276. "model_module": "@jupyter-widgets/base",
  1277. "model_module_version": "*",
  1278. "state": {
  1279. "_model_module_version": "*",
  1280. "_view_module_version": "*"
  1281. }
  1282. },
  1283. "c4b59c0dfbf047649233b834deed9215": {
  1284. "model_name": "TableDisplayModel",
  1285. "model_module": "beakerx",
  1286. "model_module_version": "*",
  1287. "state": {
  1288. "layout": "IPY_MODEL_f424372e752c476491f7ad57e2dc1791",
  1289. "model": {
  1290. "alignmentForColumn": {},
  1291. "alignmentForType": {},
  1292. "cellHighlighters": [],
  1293. "columnNames": [
  1294. null,
  1295. "Year",
  1296. "Month",
  1297. "Metric_Name",
  1298. "Metric_Type",
  1299. "Station",
  1300. "Category",
  1301. "Dom_Intl",
  1302. "variable"
  1303. ],
  1304. "columnOrder": [],
  1305. "columnsFrozen": {},
  1306. "columnsFrozenRight": {},
  1307. "columnsVisible": {},
  1308. "contextMenuItems": [],
  1309. "contextMenuTags": {},
  1310. "fontColor": [],
  1311. "hasDoubleClickAction": false,
  1312. "hasIndex": "true",
  1313. "headersVertical": false,
  1314. "rendererForColumn": {},
  1315. "rendererForType": {},
  1316. "stringFormatForColumn": {},
  1317. "stringFormatForType": {},
  1318. "subtype": "ListOfMaps",
  1319. "tooManyRows": false,
  1320. "tooltips": [],
  1321. "type": "TableDisplay",
  1322. "types": [
  1323. "integer",
  1324. "integer",
  1325. "integer",
  1326. "string",
  1327. "string",
  1328. "string",
  1329. "string",
  1330. "string",
  1331. "string"
  1332. ],
  1333. "values": [
  1334. [
  1335. "0",
  1336. "2017",
  1337. "1",
  1338. "Damages",
  1339. "Safe",
  1340. "BOG",
  1341. "Line Station",
  1342. "International",
  1343. "Actual"
  1344. ],
  1345. [
  1346. "1",
  1347. "2017",
  1348. "1",
  1349. "Damages",
  1350. "Safe",
  1351. "BOG",
  1352. "Line Station",
  1353. "International",
  1354. "Goal"
  1355. ],
  1356. [
  1357. "2",
  1358. "2017",
  1359. "1",
  1360. "Damages",
  1361. "Safe",
  1362. "BOG",
  1363. "Line Station",
  1364. "International",
  1365. "Score"
  1366. ],
  1367. [
  1368. "3",
  1369. "2017",
  1370. "1",
  1371. "Damages",
  1372. "Safe",
  1373. "BOG",
  1374. "Line Station",
  1375. "International",
  1376. "MEASURE_NUM"
  1377. ],
  1378. [
  1379. "4",
  1380. "2017",
  1381. "1",
  1382. "Damages",
  1383. "Safe",
  1384. "BOG",
  1385. "Line Station",
  1386. "International",
  1387. "MEASURE_DEN"
  1388. ]
  1389. ]
  1390. }
  1391. }
  1392. },
  1393. "e9c9ddc30e71428a8097b3ce82bab502": {
  1394. "model_name": "LayoutModel",
  1395. "model_module": "@jupyter-widgets/base",
  1396. "model_module_version": "*",
  1397. "state": {
  1398. "_model_module_version": "*",
  1399. "_view_module_version": "*"
  1400. }
  1401. },
  1402. "afbbecf0fdbd4ca39190da39b0d9db3e": {
  1403. "model_name": "TableDisplayModel",
  1404. "model_module": "beakerx",
  1405. "model_module_version": "*",
  1406. "state": {
  1407. "layout": "IPY_MODEL_e9c9ddc30e71428a8097b3ce82bab502",
  1408. "model": {
  1409. "alignmentForColumn": {},
  1410. "alignmentForType": {},
  1411. "cellHighlighters": [],
  1412. "columnNames": [
  1413. "Year",
  1414. "Month",
  1415. "Metric_Name",
  1416. "Metric_Type",
  1417. "Station",
  1418. "variable",
  1419. "value"
  1420. ],
  1421. "columnOrder": [],
  1422. "columnsFrozen": {},
  1423. "columnsFrozenRight": {},
  1424. "columnsVisible": {},
  1425. "contextMenuItems": [],
  1426. "contextMenuTags": {},
  1427. "fontColor": [],
  1428. "hasDoubleClickAction": false,
  1429. "headersVertical": false,
  1430. "rendererForColumn": {},
  1431. "rendererForType": {},
  1432. "stringFormatForColumn": {},
  1433. "stringFormatForType": {},
  1434. "subtype": "ListOfMaps",
  1435. "tooManyRows": false,
  1436. "tooltips": [],
  1437. "type": "TableDisplay",
  1438. "types": [
  1439. "double",
  1440. "integer",
  1441. "string",
  1442. "string",
  1443. "string",
  1444. "string",
  1445. "double"
  1446. ],
  1447. "values": [
  1448. [
  1449. "2017.0",
  1450. "1",
  1451. "AO Delays",
  1452. "Dependable",
  1453. "AGU",
  1454. "Actual",
  1455. "5e-06"
  1456. ],
  1457. [
  1458. "2017.0",
  1459. "1",
  1460. "AO Delays",
  1461. "Dependable",
  1462. "BZE",
  1463. "Actual",
  1464. "5e-06"
  1465. ],
  1466. [
  1467. "2017.0",
  1468. "1",
  1469. "AO Delays",
  1470. "Dependable",
  1471. "CNY",
  1472. "Actual",
  1473. "nan"
  1474. ],
  1475. [
  1476. "2017.0",
  1477. "1",
  1478. "AO Delays",
  1479. "Dependable",
  1480. "CVG",
  1481. "Actual",
  1482. "0.025005000000000003"
  1483. ],
  1484. [
  1485. "2017.0",
  1486. "1",
  1487. "AO Delays",
  1488. "Dependable",
  1489. "LAX",
  1490. "Actual",
  1491. "0.12460400000000002"
  1492. ],
  1493. [
  1494. "2017.0",
  1495. "1",
  1496. "AO Delays",
  1497. "Dependable",
  1498. "MFE",
  1499. "Actual",
  1500. "0.021701"
  1501. ],
  1502. [
  1503. "2017.0",
  1504. "1",
  1505. "AO Delays",
  1506. "Dependable",
  1507. "PVD",
  1508. "Actual",
  1509. "0.006705"
  1510. ],
  1511. [
  1512. "2017.0",
  1513. "1",
  1514. "AO Delays",
  1515. "Dependable",
  1516. "TPA",
  1517. "Actual",
  1518. "0.052102"
  1519. ]
  1520. ]
  1521. }
  1522. }
  1523. },
  1524. "ac1c0f3c72944845bc5f760da3cc4a26": {
  1525. "model_name": "LayoutModel",
  1526. "model_module": "@jupyter-widgets/base",
  1527. "model_module_version": "*",
  1528. "state": {
  1529. "_model_module_version": "*",
  1530. "_view_module_version": "*"
  1531. }
  1532. },
  1533. "76aac5f50c9246dbbee519e2524e389d": {
  1534. "model_name": "TableDisplayModel",
  1535. "model_module": "beakerx",
  1536. "model_module_version": "*",
  1537. "state": {
  1538. "layout": "IPY_MODEL_ac1c0f3c72944845bc5f760da3cc4a26",
  1539. "model": {
  1540. "alignmentForColumn": {},
  1541. "alignmentForType": {},
  1542. "cellHighlighters": [],
  1543. "columnNames": [
  1544. null,
  1545. "Year",
  1546. "Month",
  1547. "Station",
  1548. "MEASURE_NUM",
  1549. "MEASURE_DEN",
  1550. "GOAL_NUM",
  1551. "GOAL_DEN",
  1552. "Metric_Name",
  1553. "Metric_Type",
  1554. "Name_in_Server",
  1555. "Subregion",
  1556. "Subregion2",
  1557. "Region",
  1558. "Region2"
  1559. ],
  1560. "columnOrder": [],
  1561. "columnsFrozen": {},
  1562. "columnsFrozenRight": {},
  1563. "columnsVisible": {},
  1564. "contextMenuItems": [],
  1565. "contextMenuTags": {},
  1566. "fontColor": [],
  1567. "hasDoubleClickAction": false,
  1568. "hasIndex": "true",
  1569. "headersVertical": false,
  1570. "rendererForColumn": {},
  1571. "rendererForType": {},
  1572. "stringFormatForColumn": {},
  1573. "stringFormatForType": {},
  1574. "subtype": "ListOfMaps",
  1575. "tooManyRows": false,
  1576. "tooltips": [],
  1577. "type": "TableDisplay",
  1578. "types": [
  1579. "integer",
  1580. "double",
  1581. "integer",
  1582. "string",
  1583. "double",
  1584. "double",
  1585. "double",
  1586. "double",
  1587. "string",
  1588. "string",
  1589. "string",
  1590. "string",
  1591. "string",
  1592. "string",
  1593. "string"
  1594. ],
  1595. "values": [
  1596. [
  1597. "0",
  1598. "2017.0",
  1599. "1",
  1600. "AGU",
  1601. "0.0",
  1602. "31.0",
  1603. "0.0",
  1604. "961.0",
  1605. "AO Delays",
  1606. "Dependable",
  1607. "AO DELAYS",
  1608. "MEXICO",
  1609. "THE AMERICAS",
  1610. "THE AMERICAS",
  1611. "INTERNATIONAL LINE STATIONS"
  1612. ],
  1613. [
  1614. "1",
  1615. "2017.0",
  1616. "1",
  1617. "BZE",
  1618. "0.0",
  1619. "89.0",
  1620. "2.270069457",
  1621. "2759.0",
  1622. "AO Delays",
  1623. "Dependable",
  1624. "AO DELAYS",
  1625. "CENTRAL AND SOUTH AMERICA",
  1626. "THE AMERICAS",
  1627. "THE AMERICAS",
  1628. "INTERNATIONAL LINE STATIONS"
  1629. ],
  1630. [
  1631. "2",
  1632. "2017.0",
  1633. "1",
  1634. "CNY",
  1635. "nan",
  1636. "nan",
  1637. "nan",
  1638. "nan",
  1639. "AO Delays",
  1640. "Dependable",
  1641. "AO DELAYS",
  1642. "CHAFFEE",
  1643. "REGIONAL - WEST",
  1644. "REGIONAL LINE STATIONS",
  1645. "DOMESTIC LINE AND REGIONAL STATIONS"
  1646. ],
  1647. [
  1648. "3",
  1649. "2017.0",
  1650. "1",
  1651. "CVG",
  1652. "14.0",
  1653. "561.0",
  1654. "1020.885443872",
  1655. "17453.0",
  1656. "AO Delays",
  1657. "Dependable",
  1658. "AO DELAYS",
  1659. "CLEVELAND UAX METRO",
  1660. "LINE STATIONS - EAST",
  1661. "DOMESTIC LINES EAST AND WEST",
  1662. "DOMESTIC LINE AND REGIONAL STATIONS"
  1663. ],
  1664. [
  1665. "4",
  1666. "2017.0",
  1667. "1",
  1668. "LAX",
  1669. "490.0",
  1670. "3933.0",
  1671. "15685.336245422",
  1672. "121954.0",
  1673. "AO Delays",
  1674. "Dependable",
  1675. "AO DELAYS",
  1676. "LAX",
  1677. "LAX",
  1678. "LAX",
  1679. "LAX"
  1680. ]
  1681. ]
  1682. }
  1683. }
  1684. },
  1685. "fb5679ff79ab4b2cbdf13165621059b9": {
  1686. "model_name": "LayoutModel",
  1687. "model_module": "@jupyter-widgets/base",
  1688. "model_module_version": "*",
  1689. "state": {
  1690. "_model_module_version": "*",
  1691. "_view_module_version": "*"
  1692. }
  1693. },
  1694. "8e9a6135d0f04692aef91034930944a3": {
  1695. "model_name": "TableDisplayModel",
  1696. "model_module": "beakerx",
  1697. "model_module_version": "*",
  1698. "state": {
  1699. "layout": "IPY_MODEL_fb5679ff79ab4b2cbdf13165621059b9",
  1700. "model": {
  1701. "alignmentForColumn": {},
  1702. "alignmentForType": {},
  1703. "cellHighlighters": [],
  1704. "columnNames": [
  1705. "Year",
  1706. "Month",
  1707. "Metric_Name",
  1708. "Station",
  1709. "variable",
  1710. "value"
  1711. ],
  1712. "columnOrder": [],
  1713. "columnsFrozen": {},
  1714. "columnsFrozenRight": {},
  1715. "columnsVisible": {},
  1716. "contextMenuItems": [],
  1717. "contextMenuTags": {},
  1718. "fontColor": [],
  1719. "hasDoubleClickAction": false,
  1720. "headersVertical": false,
  1721. "rendererForColumn": {},
  1722. "rendererForType": {},
  1723. "stringFormatForColumn": {},
  1724. "stringFormatForType": {},
  1725. "subtype": "ListOfMaps",
  1726. "tooManyRows": false,
  1727. "tooltips": [],
  1728. "type": "TableDisplay",
  1729. "types": [
  1730. "double",
  1731. "integer",
  1732. "string",
  1733. "string",
  1734. "string",
  1735. "double"
  1736. ],
  1737. "values": [
  1738. [
  1739. "2017.0",
  1740. "1",
  1741. "AO Delays",
  1742. "ATLANTIC",
  1743. "MEASURE_NUM",
  1744. "129.0"
  1745. ],
  1746. [
  1747. "2017.0",
  1748. "1",
  1749. "AO Delays",
  1750. "DEN METRO",
  1751. "MEASURE_NUM",
  1752. "1460.0"
  1753. ],
  1754. [
  1755. "2017.0",
  1756. "1",
  1757. "AO Delays",
  1758. "EWR METRO",
  1759. "MEASURE_NUM",
  1760. "1360.0"
  1761. ],
  1762. [
  1763. "2017.0",
  1764. "1",
  1765. "AO Delays",
  1766. "IAD",
  1767. "MEASURE_NUM",
  1768. "394.0"
  1769. ],
  1770. [
  1771. "2017.0",
  1772. "1",
  1773. "AO Delays",
  1774. "IAH",
  1775. "MEASURE_NUM",
  1776. "1727.0"
  1777. ],
  1778. [
  1779. "2017.0",
  1780. "1",
  1781. "AO Delays",
  1782. "LAX",
  1783. "MEASURE_NUM",
  1784. "490.0"
  1785. ],
  1786. [
  1787. "2017.0",
  1788. "1",
  1789. "AO Delays",
  1790. "LINE STATIONS - EAST",
  1791. "MEASURE_NUM",
  1792. "829.0"
  1793. ],
  1794. [
  1795. "2017.0",
  1796. "1",
  1797. "AO Delays",
  1798. "LINE STATIONS - WEST",
  1799. "MEASURE_NUM",
  1800. "871.0"
  1801. ],
  1802. [
  1803. "2017.0",
  1804. "1",
  1805. "AO Delays",
  1806. "ORD",
  1807. "MEASURE_NUM",
  1808. "1592.0"
  1809. ],
  1810. [
  1811. "2017.0",
  1812. "1",
  1813. "AO Delays",
  1814. "PACIFIC",
  1815. "MEASURE_NUM",
  1816. "120.0"
  1817. ]
  1818. ]
  1819. }
  1820. }
  1821. },
  1822. "444c8f04bb874640b2efe65203ce32b6": {
  1823. "model_name": "LayoutModel",
  1824. "model_module": "@jupyter-widgets/base",
  1825. "model_module_version": "*",
  1826. "state": {
  1827. "_model_module_version": "*",
  1828. "_view_module_version": "*"
  1829. }
  1830. },
  1831. "38f5966584804a17ad594d270568b105": {
  1832. "model_name": "TableDisplayModel",
  1833. "model_module": "beakerx",
  1834. "model_module_version": "*",
  1835. "state": {
  1836. "layout": "IPY_MODEL_444c8f04bb874640b2efe65203ce32b6",
  1837. "model": {
  1838. "alignmentForColumn": {},
  1839. "alignmentForType": {},
  1840. "cellHighlighters": [],
  1841. "columnNames": [
  1842. null,
  1843. "Year",
  1844. "Month",
  1845. "Metric_Name",
  1846. "Metric_Type",
  1847. "Station",
  1848. "Category",
  1849. "Dom_Intl",
  1850. "variable",
  1851. "value"
  1852. ],
  1853. "columnOrder": [],
  1854. "columnsFrozen": {},
  1855. "columnsFrozenRight": {},
  1856. "columnsVisible": {},
  1857. "contextMenuItems": [],
  1858. "contextMenuTags": {},
  1859. "fontColor": [],
  1860. "hasDoubleClickAction": false,
  1861. "hasIndex": "true",
  1862. "headersVertical": false,
  1863. "rendererForColumn": {},
  1864. "rendererForType": {},
  1865. "stringFormatForColumn": {},
  1866. "stringFormatForType": {},
  1867. "subtype": "ListOfMaps",
  1868. "tooManyRows": false,
  1869. "tooltips": [],
  1870. "type": "TableDisplay",
  1871. "types": [
  1872. "integer",
  1873. "integer",
  1874. "integer",
  1875. "string",
  1876. "string",
  1877. "string",
  1878. "string",
  1879. "string",
  1880. "string",
  1881. "double"
  1882. ],
  1883. "values": [
  1884. [
  1885. "901838",
  1886. "2018",
  1887. "6",
  1888. "MBR",
  1889. "Caring",
  1890. "SYSTEM",
  1891. "SYSTEM",
  1892. "SYSTEM",
  1893. "Actual",
  1894. "4.4702"
  1895. ],
  1896. [
  1897. "901839",
  1898. "2018",
  1899. "6",
  1900. "MBR",
  1901. "Caring",
  1902. "SYSTEM",
  1903. "SYSTEM",
  1904. "SYSTEM",
  1905. "Goal",
  1906. "4.4702"
  1907. ],
  1908. [
  1909. "901840",
  1910. "2018",
  1911. "6",
  1912. "MBR",
  1913. "Caring",
  1914. "SYSTEM",
  1915. "SYSTEM",
  1916. "SYSTEM",
  1917. "Score",
  1918. "70.0"
  1919. ],
  1920. [
  1921. "901841",
  1922. "2018",
  1923. "6",
  1924. "MBR",
  1925. "Caring",
  1926. "SYSTEM",
  1927. "SYSTEM",
  1928. "SYSTEM",
  1929. "MEASURE_NUM",
  1930. "68289.0"
  1931. ],
  1932. [
  1933. "901842",
  1934. "2018",
  1935. "6",
  1936. "MBR",
  1937. "Caring",
  1938. "SYSTEM",
  1939. "SYSTEM",
  1940. "SYSTEM",
  1941. "MEASURE_DEN",
  1942. "15263702.0"
  1943. ],
  1944. [
  1945. "901843",
  1946. "2018",
  1947. "6",
  1948. "MBR",
  1949. "Caring",
  1950. "SYSTEM",
  1951. "SYSTEM",
  1952. "SYSTEM",
  1953. "GOAL_NUM",
  1954. "1939320.0"
  1955. ],
  1956. [
  1957. "901844",
  1958. "2018",
  1959. "6",
  1960. "MBR",
  1961. "Caring",
  1962. "SYSTEM",
  1963. "SYSTEM",
  1964. "SYSTEM",
  1965. "GOAL_DEN",
  1966. "457924080.0"
  1967. ]
  1968. ]
  1969. }
  1970. }
  1971. }
  1972. }
  1973. }
  1974. }
  1975. },
  1976. "nbformat": 4,
  1977. "nbformat_minor": 2
  1978. }
Add Comment
Please, Sign In to add comment