{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## View tables"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 30,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import os\n",
|
|
"import pandas as pd\n",
|
|
"import numpy as np"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 31,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"path_root = os.path.dirname(os.path.dirname(os.path.abspath('.')))\n",
|
|
"path_tables = os.path.join(path_root, 'analysis', '0730_fetch_tables')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 32,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"['TC_IF_TOD_DAY_PLAN',\n",
|
|
" 'TC_IF_TOD_HOLIDAY_PLAN',\n",
|
|
" 'TC_IF_TOD_RED_YELLO',\n",
|
|
" 'TC_IF_TOD_WEEK_PLAN',\n",
|
|
" 'TL_IF_SIGL',\n",
|
|
" 'TL_IF_SIGL_CYCL',\n",
|
|
" 'TM_FA_CRSRD',\n",
|
|
" 'TN_IF_SIGL_FLOW']"
|
|
]
|
|
},
|
|
"execution_count": 32,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"filenames = [filename[:-4] for filename in os.listdir(path_tables) if filename.endswith('csv')]\n",
|
|
"filenames"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 33,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"dfs = {filename:pd.read_csv(os.path.join(path_tables, filename)+'.csv') for filename in filenames}"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 89,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TC_IF_TOD_DAY_PLAN\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>PLAN_NO</th>\n",
|
|
" <th>HOUR</th>\n",
|
|
" <th>MIN</th>\n",
|
|
" <th>CYCL</th>\n",
|
|
" <th>OFFSET</th>\n",
|
|
" <th>RINGA_PHASE1</th>\n",
|
|
" <th>RINGA_PHASE2</th>\n",
|
|
" <th>RINGA_PHASE3</th>\n",
|
|
" <th>RINGA_PHASE4</th>\n",
|
|
" <th>...</th>\n",
|
|
" <th>RINGA_PHASE8</th>\n",
|
|
" <th>RINGB_PHASE1</th>\n",
|
|
" <th>RINGB_PHASE2</th>\n",
|
|
" <th>RINGB_PHASE3</th>\n",
|
|
" <th>RINGB_PHASE4</th>\n",
|
|
" <th>RINGB_PHASE5</th>\n",
|
|
" <th>RINGB_PHASE6</th>\n",
|
|
" <th>RINGB_PHASE7</th>\n",
|
|
" <th>RINGB_PHASE8</th>\n",
|
|
" <th>LAST_MDFCN_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>200</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>90</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>90</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-25 15:54:37.318000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>200</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>100</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>100</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-25 15:54:37.318000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>200</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>85</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>85</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-25 15:54:37.318000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>200</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-25 15:54:37.318000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>437</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>200</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>77</td>\n",
|
|
" <td>28</td>\n",
|
|
" <td>46</td>\n",
|
|
" <td>49</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>77</td>\n",
|
|
" <td>28</td>\n",
|
|
" <td>46</td>\n",
|
|
" <td>49</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-25 15:54:37.318000</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>5 rows × 23 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID PLAN_NO HOUR MIN CYCL OFFSET RINGA_PHASE1 RINGA_PHASE2 \\\n",
|
|
"0 436 1 0 0 200 35 40 90 \n",
|
|
"1 436 1 7 0 200 35 30 100 \n",
|
|
"2 436 1 9 0 200 35 50 85 \n",
|
|
"3 436 1 18 0 200 35 55 65 \n",
|
|
"4 437 1 0 0 200 5 77 28 \n",
|
|
"\n",
|
|
" RINGA_PHASE3 RINGA_PHASE4 ... RINGA_PHASE8 RINGB_PHASE1 RINGB_PHASE2 \\\n",
|
|
"0 40 30 ... 0 40 90 \n",
|
|
"1 40 30 ... 0 30 100 \n",
|
|
"2 35 30 ... 0 50 85 \n",
|
|
"3 50 30 ... 0 55 65 \n",
|
|
"4 46 49 ... 0 77 28 \n",
|
|
"\n",
|
|
" RINGB_PHASE3 RINGB_PHASE4 RINGB_PHASE5 RINGB_PHASE6 RINGB_PHASE7 \\\n",
|
|
"0 40 30 0 0 0 \n",
|
|
"1 40 30 0 0 0 \n",
|
|
"2 35 30 0 0 0 \n",
|
|
"3 50 30 0 0 0 \n",
|
|
"4 46 49 0 0 0 \n",
|
|
"\n",
|
|
" RINGB_PHASE8 LAST_MDFCN_DT \n",
|
|
"0 0 2024-07-25 15:54:37.318000 \n",
|
|
"1 0 2024-07-25 15:54:37.318000 \n",
|
|
"2 0 2024-07-25 15:54:37.318000 \n",
|
|
"3 0 2024-07-25 15:54:37.318000 \n",
|
|
"4 0 2024-07-25 15:54:37.318000 \n",
|
|
"\n",
|
|
"[5 rows x 23 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 2, 436, 437, 438, 442, 443, 444, 455, 456, 457, 458, 459, 460,\n",
|
|
" 461, 462, 463, 464, 472, 474, 482, 483, 484, 485, 486, 488, 490,\n",
|
|
" 491, 492, 493, 494, 498, 499, 500, 502, 503, 504, 514, 515, 523,\n",
|
|
" 524, 527, 551, 561, 565, 575, 576, 581, 582, 583, 611, 615, 631,\n",
|
|
" 632, 633, 634, 635, 636, 637, 638, 639, 640])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 0\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 90,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TC_IF_TOD_HOLIDAY_PLAN\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>MNTH</th>\n",
|
|
" <th>DAY</th>\n",
|
|
" <th>PLAN_NO</th>\n",
|
|
" <th>LAST_MDFCN_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2024-08-05 10:44:40.682000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2024-08-05 10:44:40.698000</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID MNTH DAY PLAN_NO LAST_MDFCN_DT\n",
|
|
"0 3 1 1 3 2024-08-05 10:44:40.682000\n",
|
|
"1 3 1 2 3 2024-08-05 10:44:40.698000"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([3])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 1\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 91,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TC_IF_TOD_RED_YELLO\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>PLAN_NO</th>\n",
|
|
" <th>PHASE</th>\n",
|
|
" <th>RINGA_FLOW</th>\n",
|
|
" <th>RINGA_RED_SEC</th>\n",
|
|
" <th>RINGA_YELLO_SEC</th>\n",
|
|
" <th>RINGA_MIN_SEC</th>\n",
|
|
" <th>RINGB_FLOW</th>\n",
|
|
" <th>RINGB_RED_SEC</th>\n",
|
|
" <th>RINGB_YELLO_SEC</th>\n",
|
|
" <th>RINGB_MIN_SEC</th>\n",
|
|
" <th>LAST_MDFCN_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>27</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>27</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>437</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID PLAN_NO PHASE RINGA_FLOW RINGA_RED_SEC RINGA_YELLO_SEC \\\n",
|
|
"0 436 1 1 5 0 4 \n",
|
|
"1 436 1 2 8 0 4 \n",
|
|
"2 436 1 3 7 0 4 \n",
|
|
"3 436 1 4 6 0 4 \n",
|
|
"4 437 1 1 6 0 4 \n",
|
|
"\n",
|
|
" RINGA_MIN_SEC RINGB_FLOW RINGB_RED_SEC RINGB_YELLO_SEC RINGB_MIN_SEC \\\n",
|
|
"0 10 2 0 4 10 \n",
|
|
"1 30 3 0 4 30 \n",
|
|
"2 32 4 0 4 32 \n",
|
|
"3 27 1 0 4 27 \n",
|
|
"4 31 2 0 4 31 \n",
|
|
"\n",
|
|
" LAST_MDFCN_DT \n",
|
|
"0 NaN \n",
|
|
"1 NaN \n",
|
|
"2 NaN \n",
|
|
"3 NaN \n",
|
|
"4 NaN "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 2, 436, 437, 438, 442, 443, 444, 455, 456, 457, 458, 459, 460,\n",
|
|
" 461, 462, 463, 464, 472, 474, 482, 483, 484, 485, 486, 488, 490,\n",
|
|
" 491, 492, 493, 494, 498, 499, 500, 502, 503, 504, 514, 515, 523,\n",
|
|
" 524, 527, 565, 575, 576, 581, 582, 583, 611, 615, 631, 632, 633,\n",
|
|
" 634, 635, 636, 637, 638, 639, 640])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 2\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 92,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TC_IF_TOD_WEEK_PLAN\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>SUN_PLAN_NO</th>\n",
|
|
" <th>MON_PLAN_NO</th>\n",
|
|
" <th>TUE_PLAN_NO</th>\n",
|
|
" <th>WED_PLAN_NO</th>\n",
|
|
" <th>THU_PLAN_NO</th>\n",
|
|
" <th>FRI_PLAN_NO</th>\n",
|
|
" <th>SAT_PLAN_NO</th>\n",
|
|
" <th>LAST_MDFCN_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2024-08-05 10:44:38.679000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2024-07-25 16:01:06</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>437</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2024-07-25 16:01:06</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>438</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2024-07-25 16:01:06</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>442</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2024-07-25 16:01:06</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID SUN_PLAN_NO MON_PLAN_NO TUE_PLAN_NO WED_PLAN_NO THU_PLAN_NO \\\n",
|
|
"0 1 2 1 1 1 1 \n",
|
|
"1 436 1 1 1 1 1 \n",
|
|
"2 437 1 1 1 1 1 \n",
|
|
"3 438 1 1 1 1 1 \n",
|
|
"4 442 1 1 1 1 1 \n",
|
|
"\n",
|
|
" FRI_PLAN_NO SAT_PLAN_NO LAST_MDFCN_DT \n",
|
|
"0 1 2 2024-08-05 10:44:38.679000 \n",
|
|
"1 1 1 2024-07-25 16:01:06 \n",
|
|
"2 1 1 2024-07-25 16:01:06 \n",
|
|
"3 1 1 2024-07-25 16:01:06 \n",
|
|
"4 1 1 2024-07-25 16:01:06 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 1, 436, 437, 438, 442, 443, 444, 455, 456, 457, 458, 459, 460,\n",
|
|
" 461, 462, 463, 464, 472, 474, 482, 483, 484, 485, 486, 488, 490,\n",
|
|
" 491, 492, 493, 494, 498, 499, 500, 502, 503, 504, 514, 515, 523,\n",
|
|
" 524, 527, 551, 561, 565, 575, 576, 581, 582, 583, 611, 615, 631,\n",
|
|
" 632, 633, 634, 635, 636, 637, 638, 639, 640])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 3\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 93,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TL_IF_SIGL\n"
|
|
]
|
|
},
|
|
{
|
|
"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>PHASE_DT</th>\n",
|
|
" <th>CRSRD_ID</th>\n",
|
|
" <th>RINGA_PHASE</th>\n",
|
|
" <th>RINGA_FLOW</th>\n",
|
|
" <th>RINGB_PHASE</th>\n",
|
|
" <th>RINGB_FLOW</th>\n",
|
|
" <th>MAP_MODE</th>\n",
|
|
" <th>FRST_REG_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>2024-07-31 08:58:46</td>\n",
|
|
" <td>436</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 08:58:46.799000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>2024-07-31 08:58:46</td>\n",
|
|
" <td>437</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 08:58:46.799000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>2024-07-31 08:58:46</td>\n",
|
|
" <td>438</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 08:58:46.799000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>2024-07-31 08:58:46</td>\n",
|
|
" <td>442</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 08:58:46.799000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>2024-07-31 08:58:46</td>\n",
|
|
" <td>443</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 08:58:46.799000</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" PHASE_DT CRSRD_ID RINGA_PHASE RINGA_FLOW RINGB_PHASE \\\n",
|
|
"0 2024-07-31 08:58:46 436 2 8 2 \n",
|
|
"1 2024-07-31 08:58:46 437 3 8 3 \n",
|
|
"2 2024-07-31 08:58:46 438 1 6 1 \n",
|
|
"3 2024-07-31 08:58:46 442 1 6 1 \n",
|
|
"4 2024-07-31 08:58:46 443 1 6 1 \n",
|
|
"\n",
|
|
" RINGB_FLOW MAP_MODE FRST_REG_DT \n",
|
|
"0 3 0 2024-07-31 08:58:46.799000 \n",
|
|
"1 3 0 2024-07-31 08:58:46.799000 \n",
|
|
"2 2 0 2024-07-31 08:58:46.799000 \n",
|
|
"3 1 0 2024-07-31 08:58:46.799000 \n",
|
|
"4 2 0 2024-07-31 08:58:46.799000 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([436, 437, 438, 442, 443, 444, 455, 456, 457, 458])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 4\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 94,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TL_IF_SIGL_CYCL\n"
|
|
]
|
|
},
|
|
{
|
|
"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>OCRN_DT</th>\n",
|
|
" <th>CRSRD_ID</th>\n",
|
|
" <th>RINGA_PHASE1</th>\n",
|
|
" <th>RINGA_PHASE2</th>\n",
|
|
" <th>RINGA_PHASE3</th>\n",
|
|
" <th>RINGA_PHASE4</th>\n",
|
|
" <th>RINGA_PHASE5</th>\n",
|
|
" <th>RINGA_PHASE6</th>\n",
|
|
" <th>RINGA_PHASE7</th>\n",
|
|
" <th>RINGA_PHASE8</th>\n",
|
|
" <th>RINGB_PHASE1</th>\n",
|
|
" <th>RINGB_PHASE2</th>\n",
|
|
" <th>RINGB_PHASE3</th>\n",
|
|
" <th>RINGB_PHASE4</th>\n",
|
|
" <th>RINGB_PHASE5</th>\n",
|
|
" <th>RINGB_PHASE6</th>\n",
|
|
" <th>RINGB_PHASE7</th>\n",
|
|
" <th>RINGB_PHASE8</th>\n",
|
|
" <th>FRST_REG_DT</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>2024-07-31 14:28:22</td>\n",
|
|
" <td>443</td>\n",
|
|
" <td>125</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>125</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 14:28:22.253000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>2024-07-31 14:30:52</td>\n",
|
|
" <td>457</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 14:48:11.515000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>2024-07-31 15:50:07</td>\n",
|
|
" <td>437</td>\n",
|
|
" <td>77</td>\n",
|
|
" <td>28</td>\n",
|
|
" <td>46</td>\n",
|
|
" <td>49</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>77</td>\n",
|
|
" <td>28</td>\n",
|
|
" <td>46</td>\n",
|
|
" <td>49</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 15:51:34.345000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>2024-07-31 15:51:43</td>\n",
|
|
" <td>443</td>\n",
|
|
" <td>125</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>125</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 15:51:48.566000</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>2024-07-31 14:57:54</td>\n",
|
|
" <td>457</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>40</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2024-07-31 15:00:36.599000</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" OCRN_DT CRSRD_ID RINGA_PHASE1 RINGA_PHASE2 RINGA_PHASE3 \\\n",
|
|
"0 2024-07-31 14:28:22 443 125 25 50 \n",
|
|
"1 2024-07-31 14:30:52 457 45 20 40 \n",
|
|
"2 2024-07-31 15:50:07 437 77 28 46 \n",
|
|
"3 2024-07-31 15:51:43 443 125 25 50 \n",
|
|
"4 2024-07-31 14:57:54 457 45 20 40 \n",
|
|
"\n",
|
|
" RINGA_PHASE4 RINGA_PHASE5 RINGA_PHASE6 RINGA_PHASE7 RINGA_PHASE8 \\\n",
|
|
"0 0 0 0 0 0 \n",
|
|
"1 40 35 0 0 0 \n",
|
|
"2 49 0 0 0 0 \n",
|
|
"3 0 0 0 0 0 \n",
|
|
"4 40 35 0 0 0 \n",
|
|
"\n",
|
|
" RINGB_PHASE1 RINGB_PHASE2 RINGB_PHASE3 RINGB_PHASE4 RINGB_PHASE5 \\\n",
|
|
"0 125 25 50 0 0 \n",
|
|
"1 45 20 40 40 35 \n",
|
|
"2 77 28 46 49 0 \n",
|
|
"3 125 25 50 0 0 \n",
|
|
"4 45 20 40 40 35 \n",
|
|
"\n",
|
|
" RINGB_PHASE6 RINGB_PHASE7 RINGB_PHASE8 FRST_REG_DT \n",
|
|
"0 0 0 0 2024-07-31 14:28:22.253000 \n",
|
|
"1 0 0 0 2024-07-31 14:48:11.515000 \n",
|
|
"2 0 0 0 2024-07-31 15:51:34.345000 \n",
|
|
"3 0 0 0 2024-07-31 15:51:48.566000 \n",
|
|
"4 0 0 0 2024-07-31 15:00:36.599000 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([436, 437, 438, 442, 443, 444, 455, 456, 457, 458])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 5\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 95,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TM_FA_CRSRD\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>CRSRD_NM</th>\n",
|
|
" <th>CRSRD_TYPE</th>\n",
|
|
" <th>CTRLER_TYPE</th>\n",
|
|
" <th>TRFLIG_TYPE</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>LTTD</th>\n",
|
|
" <th>LGTD</th>\n",
|
|
" <th>PPC_TYPE</th>\n",
|
|
" <th>MAIN_PHASE</th>\n",
|
|
" <th>LOS_YN</th>\n",
|
|
" <th>USE_YN</th>\n",
|
|
" <th>FRST_REG_DT</th>\n",
|
|
" <th>LAST_MDFCN_DT</th>\n",
|
|
" <th>MAIN_CRSRD_ID</th>\n",
|
|
" <th>GRP_NO</th>\n",
|
|
" <th>ZONE_ID</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>123</td>\n",
|
|
" <td>서현3거리</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>123</td>\n",
|
|
" <td>37.37840</td>\n",
|
|
" <td>127.12594</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>2024-07-16 17:11:22.680000</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>145</td>\n",
|
|
" <td>장안로삼거리(신동아빌라)</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>145</td>\n",
|
|
" <td>37.36776</td>\n",
|
|
" <td>127.14022</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>2024-07-16 17:11:22.680000</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>701</td>\n",
|
|
" <td>정혜사</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>701</td>\n",
|
|
" <td>37.42803</td>\n",
|
|
" <td>127.09346</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>2024-07-16 17:11:22.680000</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>375</td>\n",
|
|
" <td>동안교 삼거리</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>375</td>\n",
|
|
" <td>37.39774</td>\n",
|
|
" <td>127.10967</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>2024-07-16 17:11:22.680000</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>378</td>\n",
|
|
" <td>낙생지하차도 삼거리</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>378</td>\n",
|
|
" <td>37.38968</td>\n",
|
|
" <td>127.10889</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>2024-07-16 17:11:22.680000</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID CRSRD_NM CRSRD_TYPE CTRLER_TYPE TRFLIG_TYPE NODE_ID \\\n",
|
|
"0 123 서현3거리 0 1 1 123 \n",
|
|
"1 145 장안로삼거리(신동아빌라) 0 1 1 145 \n",
|
|
"2 701 정혜사 0 1 1 701 \n",
|
|
"3 375 동안교 삼거리 0 1 1 375 \n",
|
|
"4 378 낙생지하차도 삼거리 0 1 1 378 \n",
|
|
"\n",
|
|
" LTTD LGTD PPC_TYPE MAIN_PHASE LOS_YN USE_YN \\\n",
|
|
"0 37.37840 127.12594 1 1 Y Y \n",
|
|
"1 37.36776 127.14022 1 1 Y Y \n",
|
|
"2 37.42803 127.09346 1 1 Y Y \n",
|
|
"3 37.39774 127.10967 1 1 Y Y \n",
|
|
"4 37.38968 127.10889 1 1 Y Y \n",
|
|
"\n",
|
|
" FRST_REG_DT LAST_MDFCN_DT MAIN_CRSRD_ID GRP_NO ZONE_ID \n",
|
|
"0 2024-07-16 17:11:22.680000 NaN NaN NaN NaN \n",
|
|
"1 2024-07-16 17:11:22.680000 NaN NaN NaN NaN \n",
|
|
"2 2024-07-16 17:11:22.680000 NaN NaN NaN NaN \n",
|
|
"3 2024-07-16 17:11:22.680000 NaN NaN NaN NaN \n",
|
|
"4 2024-07-16 17:11:22.680000 NaN NaN NaN NaN "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 1, 2, 5, 6, 9, 14, 15, 16, 18, 19, 24,\n",
|
|
" 25, 27, 33, 38, 40, 44, 46, 49, 50, 53, 57,\n",
|
|
" 64, 72, 78, 79, 83, 89, 91, 95, 96, 100, 102,\n",
|
|
" 103, 104, 106, 119, 123, 131, 134, 135, 144, 145, 151,\n",
|
|
" 154, 155, 156, 163, 167, 169, 172, 175, 178, 180, 183,\n",
|
|
" 185, 191, 193, 201, 208, 214, 215, 217, 220, 222, 226,\n",
|
|
" 231, 232, 240, 243, 245, 247, 249, 250, 254, 256, 259,\n",
|
|
" 260, 263, 267, 270, 272, 273, 279, 281, 284, 287, 291,\n",
|
|
" 293, 297, 298, 299, 300, 302, 305, 307, 320, 321, 325,\n",
|
|
" 350, 354, 355, 358, 361, 364, 365, 367, 369, 371, 373,\n",
|
|
" 375, 376, 377, 378, 379, 405, 409, 410, 411, 412, 414,\n",
|
|
" 415, 416, 417, 420, 424, 425, 437, 443, 445, 448, 456,\n",
|
|
" 457, 459, 461, 462, 463, 466, 467, 476, 481, 482, 484,\n",
|
|
" 486, 491, 492, 496, 503, 506, 507, 514, 517, 520, 522,\n",
|
|
" 523, 532, 534, 536, 541, 570, 583, 592, 596, 622, 623,\n",
|
|
" 624, 629, 633, 634, 636, 637, 638, 639, 645, 646, 648,\n",
|
|
" 650, 656, 658, 660, 661, 676, 682, 683, 684, 691, 698,\n",
|
|
" 699, 701, 703, 706, 707, 713, 722, 724, 727, 738, 739,\n",
|
|
" 740, 741, 742, 743, 745, 747, 749, 751, 752, 2001, 2002,\n",
|
|
" 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2101, 2102, 2103, 2104,\n",
|
|
" 2105, 2201])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 6\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 96,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"TN_IF_SIGL_FLOW\n"
|
|
]
|
|
},
|
|
{
|
|
"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>CRSRD_ID</th>\n",
|
|
" <th>PHASE</th>\n",
|
|
" <th>RING</th>\n",
|
|
" <th>FLOW_NO</th>\n",
|
|
" <th>STOS_NO</th>\n",
|
|
" <th>SIGL_ARROW</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>[37.4315610499752, 127.17826533029], [37.43166...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>[37.4312458258359, 127.179155823683], [37.4316...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>[37.4321701955642, 127.179037806486], [37.4316...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>[37.4317995970901, 127.179584977125], [37.4316...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>437</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>[37.4311100357524, 127.174848032385], [37.4311...</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSRD_ID PHASE RING FLOW_NO STOS_NO \\\n",
|
|
"0 436 1 A 5 0 \n",
|
|
"1 436 2 A 8 0 \n",
|
|
"2 436 3 A 7 0 \n",
|
|
"3 436 4 A 6 0 \n",
|
|
"4 437 1 A 6 0 \n",
|
|
"\n",
|
|
" SIGL_ARROW \n",
|
|
"0 [37.4315610499752, 127.17826533029], [37.43166... \n",
|
|
"1 [37.4312458258359, 127.179155823683], [37.4316... \n",
|
|
"2 [37.4321701955642, 127.179037806486], [37.4316... \n",
|
|
"3 [37.4317995970901, 127.179584977125], [37.4316... \n",
|
|
"4 [37.4311100357524, 127.174848032385], [37.4311... "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 1, 436, 437, 438, 442, 443, 444, 455, 456, 457, 458, 459, 460,\n",
|
|
" 461, 462, 463, 464, 472, 474, 482, 483, 484, 485, 486, 488, 490,\n",
|
|
" 491, 492, 493, 494, 498, 499, 500, 502, 503, 504, 514, 515, 523,\n",
|
|
" 524, 527, 565, 575, 576, 581, 582, 583, 611, 615, 631, 632, 633,\n",
|
|
" 634, 635, 636, 637, 638, 639, 640])"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"i = 7\n",
|
|
"filename = filenames[i]\n",
|
|
"print(filename)\n",
|
|
"display(dfs[filename].head())\n",
|
|
"display(np.sort(dfs[filename].CRSRD_ID.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 104,
|
|
"metadata": {},
|
|
"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>signal_id</th>\n",
|
|
" <th>node_id</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>436</td>\n",
|
|
" <td>109836</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>437</td>\n",
|
|
" <td>109986</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>438</td>\n",
|
|
" <td>106350</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>442</td>\n",
|
|
" <td>106332</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>443</td>\n",
|
|
" <td>108769</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5</th>\n",
|
|
" <td>444</td>\n",
|
|
" <td>109842</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>6</th>\n",
|
|
" <td>455</td>\n",
|
|
" <td>109901</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7</th>\n",
|
|
" <td>456</td>\n",
|
|
" <td>106231</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>8</th>\n",
|
|
" <td>457</td>\n",
|
|
" <td>106234</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>9</th>\n",
|
|
" <td>458</td>\n",
|
|
" <td>106238</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" signal_id node_id\n",
|
|
"0 436 109836\n",
|
|
"1 437 109986\n",
|
|
"2 438 106350\n",
|
|
"3 442 106332\n",
|
|
"4 443 108769\n",
|
|
"5 444 109842\n",
|
|
"6 455 109901\n",
|
|
"7 456 106231\n",
|
|
"8 457 106234\n",
|
|
"9 458 106238"
|
|
]
|
|
},
|
|
"execution_count": 104,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"signal_node_matching = pd.read_csv(os.path.join(path_root, 'data', 'tables', '20240729', 'signal_node_matching.csv'))\n",
|
|
"signal_node_matching[:10]"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## View the network"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 60,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import sumolib"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 98,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"net = sumolib.net.readNet(os.path.join(path_root, 'test_0731', 'data', 'networks', 'new_sungnam_network_internal_target_0721.net.xml'))\n",
|
|
"tnode_ids = sorted(node.getID() for node in net.getNodes() if node.getType()=='traffic_light')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Add data to `TN_IF_SIGL_FLOW`"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 109,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
" CRSRD_ID PHASE RING FLOW_NO STOS_NO \\\n",
|
|
"0 436 1 A 5 0 \n",
|
|
"\n",
|
|
" SIGL_ARROW \n",
|
|
"0 [37.4315610499752, 127.17826533029], [37.43166... \n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"TN_IF_SIGL_FLOW = dfs[filenames[7]]\n",
|
|
"print(TN_IF_SIGL_FLOW[0:1])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 110,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"'[37.4315610499752, 127.17826533029], [37.4316611546606, 127.179091450666], [37.4322937279812, 127.179048535322]'"
|
|
]
|
|
},
|
|
"execution_count": 110,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"TN_IF_SIGL_FLOW.iloc[0].SIGL_ARROW"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 113,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# TN_IF_SIGL_FLOW[:50]"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "siggen_env",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.12.4"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|