|
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"import os\n",
|
|
"import pandas as pd\n",
|
|
"\n",
|
|
"# .csv 파일만을 대상으로 합니다.\n",
|
|
"csv_files = [file for file in os.listdir() if file.endswith('.csv')]\n",
|
|
"\n",
|
|
"# # 각 CSV 파일에 대해\n",
|
|
"# for filename in csv_files:\n",
|
|
"# # 파일명을 '_'를 기준으로 분리합니다.\n",
|
|
"# parts = filename.split('_')\n",
|
|
"# # 테이블명과 확장자만을 사용해 새 파일명을 생성합니다.\n",
|
|
"# new_filename = parts[0] + '.csv'\n",
|
|
"# # 파일명을 변경합니다. 현재 파일명과 새 파일명이 같지 않은 경우에만 변경합니다.\n",
|
|
"# if filename != new_filename:\n",
|
|
"# os.rename(filename, new_filename)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"['SOITDSPOTINTSOPERHSTR.csv',\n",
|
|
" 'SOITDTODCNFG.csv',\n",
|
|
" 'SOITDWKLYPLAN.csv',\n",
|
|
" 'SOITSINTSSGNLCNFGINFO.csv',\n",
|
|
" 'SOITSINTSSGNLCNFGINFOTMDIFF.csv',\n",
|
|
" 'SOITSPHASINFO.csv',\n",
|
|
" 'SOITSPHASINFOTMDIFF.csv',\n",
|
|
" 'SOITSRGNPRTTNINFO.csv',\n",
|
|
" 'SOITSSMLNFLFMTHSTR.csv',\n",
|
|
" 'SOITSSPOTINTSTMDIFF.csv']"
|
|
]
|
|
},
|
|
"execution_count": 2,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"csv_files"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"10\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"names = [f for f in os.listdir() if f.endswith('.csv')]\n",
|
|
"\n",
|
|
"dfs = []\n",
|
|
"for csv_file in names:\n",
|
|
" table_name = csv_file.split('.')[0]\n",
|
|
" dfs.append(pd.read_csv(csv_file))\n",
|
|
"\n",
|
|
"pd.set_option(\"display.max_columns\", None)\n",
|
|
"pd.set_option('display.min_rows', 20)\n",
|
|
"pd.reset_option('display.min_rows')\n",
|
|
"\n",
|
|
"print(len(names))\n",
|
|
"# for i in range(len(names)):\n",
|
|
"# print(names[i])\n",
|
|
"# display(dfs[i])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 4,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITDSPOTINTSOPERHSTR.csv\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>SPOT_INTS_ID</th>\n",
|
|
" <th>CLCT_UNIX_TM</th>\n",
|
|
" <th>CLCT_DT</th>\n",
|
|
" <th>CTRL_SE_CD</th>\n",
|
|
" <th>CTRL_STTS_CD</th>\n",
|
|
" <th>CYCL_HR</th>\n",
|
|
" <th>OFST_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_AMBL_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>5341</td>\n",
|
|
" <td>1701759845</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>120</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>5343</td>\n",
|
|
" <td>1701759844</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>149</td>\n",
|
|
" <td>93</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>118</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>118</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>5345</td>\n",
|
|
" <td>1701759843</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>141</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>5372</td>\n",
|
|
" <td>1701759845</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>150</td>\n",
|
|
" <td>95</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>102</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>102</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>6008</td>\n",
|
|
" <td>1701759845</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>150</td>\n",
|
|
" <td>95</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>24</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>24</td>\n",
|
|
" <td>68</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>37</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>37</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID CLCT_UNIX_TM CLCT_DT CTRL_SE_CD CTRL_STTS_CD CYCL_HR \\\n",
|
|
"0 5341 1701759845 20231205 3 1 120 \n",
|
|
"1 5343 1701759844 20231205 3 1 149 \n",
|
|
"2 5345 1701759843 20231205 3 1 141 \n",
|
|
"3 5372 1701759845 20231205 3 1 150 \n",
|
|
"4 6008 1701759845 20231205 3 1 150 \n",
|
|
"\n",
|
|
" OFST_HR A_RING_1_PHAS_HR A_RING_2_PHAS_HR A_RING_3_PHAS_HR \\\n",
|
|
"0 5 21 39 21 \n",
|
|
"1 93 31 118 0 \n",
|
|
"2 23 21 32 18 \n",
|
|
"3 95 26 102 22 \n",
|
|
"4 95 38 24 44 \n",
|
|
"\n",
|
|
" A_RING_4_PHAS_HR A_RING_5_PHAS_HR A_RING_6_PHAS_HR A_RING_7_PHAS_HR \\\n",
|
|
"0 39 0 0 0 \n",
|
|
"1 0 0 0 0 \n",
|
|
"2 21 31 18 0 \n",
|
|
"3 0 0 0 0 \n",
|
|
"4 44 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_8_PHAS_HR B_RING_1_PHAS_HR B_RING_2_PHAS_HR B_RING_3_PHAS_HR \\\n",
|
|
"0 0 21 39 21 \n",
|
|
"1 0 31 118 0 \n",
|
|
"2 0 21 32 18 \n",
|
|
"3 0 26 102 22 \n",
|
|
"4 0 38 24 68 \n",
|
|
"\n",
|
|
" B_RING_4_PHAS_HR B_RING_5_PHAS_HR B_RING_6_PHAS_HR B_RING_7_PHAS_HR \\\n",
|
|
"0 39 0 0 0 \n",
|
|
"1 0 0 0 0 \n",
|
|
"2 21 31 18 0 \n",
|
|
"3 0 0 0 0 \n",
|
|
"4 20 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_8_PHAS_HR A_RING_1_PHAS_AMBL_HR A_RING_2_PHAS_AMBL_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 0 0 0 \n",
|
|
"4 0 34 0 \n",
|
|
"\n",
|
|
" A_RING_3_PHAS_AMBL_HR A_RING_4_PHAS_AMBL_HR A_RING_5_PHAS_AMBL_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 0 0 0 \n",
|
|
"4 37 0 0 \n",
|
|
"\n",
|
|
" A_RING_6_PHAS_AMBL_HR A_RING_7_PHAS_AMBL_HR A_RING_8_PHAS_AMBL_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 0 0 0 \n",
|
|
"4 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_1_PHAS_AMBL_HR B_RING_2_PHAS_AMBL_HR B_RING_3_PHAS_AMBL_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 0 0 0 \n",
|
|
"4 34 0 37 \n",
|
|
"\n",
|
|
" B_RING_4_PHAS_AMBL_HR B_RING_5_PHAS_AMBL_HR B_RING_6_PHAS_AMBL_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 0 0 0 \n",
|
|
"4 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_7_PHAS_AMBL_HR B_RING_8_PHAS_AMBL_HR \n",
|
|
"0 0 0 \n",
|
|
"1 0 0 \n",
|
|
"2 0 0 \n",
|
|
"3 0 0 \n",
|
|
"4 0 0 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[3 0 2]\n",
|
|
"[1 3 2 0]\n",
|
|
"298922\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>SPOT_INTS_ID</th>\n",
|
|
" <th>CLCT_UNIX_TM</th>\n",
|
|
" <th>CLCT_DT</th>\n",
|
|
" <th>CTRL_SE_CD</th>\n",
|
|
" <th>CTRL_STTS_CD</th>\n",
|
|
" <th>CYCL_HR</th>\n",
|
|
" <th>OFST_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_AMBL_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_AMBL_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_AMBL_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>113</th>\n",
|
|
" <td>8342</td>\n",
|
|
" <td>1701759852</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>72</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>114</th>\n",
|
|
" <td>8343</td>\n",
|
|
" <td>1701759851</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>71</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>748</th>\n",
|
|
" <td>8340</td>\n",
|
|
" <td>1701759881</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>41</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>749</th>\n",
|
|
" <td>8345</td>\n",
|
|
" <td>1701759881</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>41</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1602</th>\n",
|
|
" <td>3160</td>\n",
|
|
" <td>1701759926</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>122</td>\n",
|
|
" <td>124</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>88</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>88</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID CLCT_UNIX_TM CLCT_DT CTRL_SE_CD CTRL_STTS_CD CYCL_HR \\\n",
|
|
"113 8342 1701759852 20231205 3 1 0 \n",
|
|
"114 8343 1701759851 20231205 3 1 0 \n",
|
|
"748 8340 1701759881 20231205 3 1 0 \n",
|
|
"749 8345 1701759881 20231205 3 1 0 \n",
|
|
"1602 3160 1701759926 20231205 3 2 122 \n",
|
|
"\n",
|
|
" OFST_HR A_RING_1_PHAS_HR A_RING_2_PHAS_HR A_RING_3_PHAS_HR \\\n",
|
|
"113 72 0 0 0 \n",
|
|
"114 71 0 0 0 \n",
|
|
"748 41 0 0 0 \n",
|
|
"749 41 0 0 0 \n",
|
|
"1602 124 34 88 0 \n",
|
|
"\n",
|
|
" A_RING_4_PHAS_HR A_RING_5_PHAS_HR A_RING_6_PHAS_HR A_RING_7_PHAS_HR \\\n",
|
|
"113 0 0 0 0 \n",
|
|
"114 0 0 0 0 \n",
|
|
"748 0 0 0 0 \n",
|
|
"749 0 0 0 0 \n",
|
|
"1602 0 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_8_PHAS_HR B_RING_1_PHAS_HR B_RING_2_PHAS_HR B_RING_3_PHAS_HR \\\n",
|
|
"113 0 0 0 0 \n",
|
|
"114 0 0 0 0 \n",
|
|
"748 0 0 0 0 \n",
|
|
"749 0 0 0 0 \n",
|
|
"1602 0 34 88 0 \n",
|
|
"\n",
|
|
" B_RING_4_PHAS_HR B_RING_5_PHAS_HR B_RING_6_PHAS_HR B_RING_7_PHAS_HR \\\n",
|
|
"113 0 0 0 0 \n",
|
|
"114 0 0 0 0 \n",
|
|
"748 0 0 0 0 \n",
|
|
"749 0 0 0 0 \n",
|
|
"1602 0 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_8_PHAS_HR A_RING_1_PHAS_AMBL_HR A_RING_2_PHAS_AMBL_HR \\\n",
|
|
"113 0 0 0 \n",
|
|
"114 0 0 0 \n",
|
|
"748 0 0 0 \n",
|
|
"749 0 0 0 \n",
|
|
"1602 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_3_PHAS_AMBL_HR A_RING_4_PHAS_AMBL_HR A_RING_5_PHAS_AMBL_HR \\\n",
|
|
"113 0 0 0 \n",
|
|
"114 0 0 0 \n",
|
|
"748 0 0 0 \n",
|
|
"749 0 0 0 \n",
|
|
"1602 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_6_PHAS_AMBL_HR A_RING_7_PHAS_AMBL_HR A_RING_8_PHAS_AMBL_HR \\\n",
|
|
"113 0 0 0 \n",
|
|
"114 0 0 0 \n",
|
|
"748 0 0 0 \n",
|
|
"749 0 0 0 \n",
|
|
"1602 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_1_PHAS_AMBL_HR B_RING_2_PHAS_AMBL_HR B_RING_3_PHAS_AMBL_HR \\\n",
|
|
"113 0 0 0 \n",
|
|
"114 0 0 0 \n",
|
|
"748 0 0 0 \n",
|
|
"749 0 0 0 \n",
|
|
"1602 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_4_PHAS_AMBL_HR B_RING_5_PHAS_AMBL_HR B_RING_6_PHAS_AMBL_HR \\\n",
|
|
"113 0 0 0 \n",
|
|
"114 0 0 0 \n",
|
|
"748 0 0 0 \n",
|
|
"749 0 0 0 \n",
|
|
"1602 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_7_PHAS_AMBL_HR B_RING_8_PHAS_AMBL_HR \n",
|
|
"113 0 0 \n",
|
|
"114 0 0 \n",
|
|
"748 0 0 \n",
|
|
"749 0 0 \n",
|
|
"1602 0 0 "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"2896\n",
|
|
"41\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# 신호교차로운영이력 #1124606개 행 41개 열 # related to history\n",
|
|
"print(names[0])\n",
|
|
"display(dfs[0].head())\n",
|
|
"print(dfs[0].CTRL_SE_CD.unique()) # 제어구분코드\n",
|
|
"print(dfs[0].CTRL_STTS_CD.unique()) # 제어상태코드\n",
|
|
"print((dfs[0]['CYCL_HR'] >= dfs[0]['OFST_HR']).sum())\n",
|
|
"display(dfs[0][dfs[0]['CYCL_HR']<dfs[0]['OFST_HR']].head())\n",
|
|
"dfs[0]['A_sum'] = sum(dfs[0][f'A_RING_{i}_PHAS_HR'] for i in range(1, 9)) \n",
|
|
"dfs[0]['B_sum'] = sum(dfs[0][f'A_RING_{i}_PHAS_HR'] for i in range(1, 9)) \n",
|
|
"consistent = (dfs[0]['A_sum'] == dfs[0]['B_sum']) & (dfs[0]['B_sum'] == dfs[0]['CYCL_HR'])\n",
|
|
"dfs[0][~consistent].head()\n",
|
|
"print(dfs[0].SPOT_INTS_ID.nunique())\n",
|
|
"print(len(dfs[0].columns))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITDTODCNFG.csv\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>SPOT_INTS_ID</th>\n",
|
|
" <th>CLCT_UNIX_TM</th>\n",
|
|
" <th>CLCT_DT</th>\n",
|
|
" <th>TM_PLAN_NO</th>\n",
|
|
" <th>PHAS_OPER_PLAN_NO</th>\n",
|
|
" <th>BGNG_HH</th>\n",
|
|
" <th>BGNG_MI</th>\n",
|
|
" <th>CYCL_HR</th>\n",
|
|
" <th>OFST_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>1120</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>160</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>63</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>63</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1121</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1122</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1123</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>13</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1124</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>16</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>160</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>63</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>63</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>14806</td>\n",
|
|
" <td>1701753355</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>12</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>14806</td>\n",
|
|
" <td>1701753355</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>13</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>14806</td>\n",
|
|
" <td>1701753355</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>14</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>14806</td>\n",
|
|
" <td>1701753355</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>15</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>14806</td>\n",
|
|
" <td>1701753355</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>16</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>10000 rows × 25 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID CLCT_UNIX_TM CLCT_DT TM_PLAN_NO PHAS_OPER_PLAN_NO \\\n",
|
|
"1120 1001 1701702017 20231205 1 1 \n",
|
|
"1121 1001 1701702017 20231205 1 2 \n",
|
|
"1122 1001 1701702017 20231205 1 3 \n",
|
|
"1123 1001 1701702017 20231205 1 4 \n",
|
|
"1124 1001 1701702017 20231205 1 5 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"4 14806 1701753355 20231205 10 12 \n",
|
|
"3 14806 1701753355 20231205 10 13 \n",
|
|
"2 14806 1701753355 20231205 10 14 \n",
|
|
"1 14806 1701753355 20231205 10 15 \n",
|
|
"0 14806 1701753355 20231205 10 16 \n",
|
|
"\n",
|
|
" BGNG_HH BGNG_MI CYCL_HR OFST_HR A_RING_1_PHAS_HR A_RING_2_PHAS_HR \\\n",
|
|
"1120 6 0 160 45 63 45 \n",
|
|
"1121 7 0 170 50 70 45 \n",
|
|
"1122 9 30 170 50 70 45 \n",
|
|
"1123 13 0 170 50 70 45 \n",
|
|
"1124 16 0 160 35 63 45 \n",
|
|
"... ... ... ... ... ... ... \n",
|
|
"4 0 0 0 0 0 0 \n",
|
|
"3 0 0 0 0 0 0 \n",
|
|
"2 0 0 0 0 0 0 \n",
|
|
"1 0 0 0 0 0 0 \n",
|
|
"0 0 0 0 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_3_PHAS_HR A_RING_4_PHAS_HR A_RING_5_PHAS_HR A_RING_6_PHAS_HR \\\n",
|
|
"1120 52 0 0 0 \n",
|
|
"1121 55 0 0 0 \n",
|
|
"1122 55 0 0 0 \n",
|
|
"1123 55 0 0 0 \n",
|
|
"1124 52 0 0 0 \n",
|
|
"... ... ... ... ... \n",
|
|
"4 0 0 0 0 \n",
|
|
"3 0 0 0 0 \n",
|
|
"2 0 0 0 0 \n",
|
|
"1 0 0 0 0 \n",
|
|
"0 0 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_7_PHAS_HR A_RING_8_PHAS_HR B_RING_1_PHAS_HR B_RING_2_PHAS_HR \\\n",
|
|
"1120 0 0 63 45 \n",
|
|
"1121 0 0 70 45 \n",
|
|
"1122 0 0 70 45 \n",
|
|
"1123 0 0 70 45 \n",
|
|
"1124 0 0 63 45 \n",
|
|
"... ... ... ... ... \n",
|
|
"4 0 0 0 0 \n",
|
|
"3 0 0 0 0 \n",
|
|
"2 0 0 0 0 \n",
|
|
"1 0 0 0 0 \n",
|
|
"0 0 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_3_PHAS_HR B_RING_4_PHAS_HR B_RING_5_PHAS_HR B_RING_6_PHAS_HR \\\n",
|
|
"1120 52 0 0 0 \n",
|
|
"1121 55 0 0 0 \n",
|
|
"1122 55 0 0 0 \n",
|
|
"1123 55 0 0 0 \n",
|
|
"1124 52 0 0 0 \n",
|
|
"... ... ... ... ... \n",
|
|
"4 0 0 0 0 \n",
|
|
"3 0 0 0 0 \n",
|
|
"2 0 0 0 0 \n",
|
|
"1 0 0 0 0 \n",
|
|
"0 0 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_7_PHAS_HR B_RING_8_PHAS_HR \n",
|
|
"1120 0 0 \n",
|
|
"1121 0 0 \n",
|
|
"1122 0 0 \n",
|
|
"1123 0 0 \n",
|
|
"1124 0 0 \n",
|
|
"... ... ... \n",
|
|
"4 0 0 \n",
|
|
"3 0 0 \n",
|
|
"2 0 0 \n",
|
|
"1 0 0 \n",
|
|
"0 0 0 \n",
|
|
"\n",
|
|
"[10000 rows x 25 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[10 9 8 7 6 5 4 3 2 1]\n",
|
|
"[16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1]\n",
|
|
"[ 0 23 21 19 17 9 7 6 5 22 8 20 16 11 13 10 18 12]\n",
|
|
"[ 0 30]\n",
|
|
"[ 0 110 120 130 140 150 160 170 100 180 190 80 85 90 200 95]\n",
|
|
"58\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# TOD 구성 # 492640개 행 25개 열 # related to todplan\n",
|
|
"print(names[1])\n",
|
|
"display(dfs[1].sort_values(by=['SPOT_INTS_ID', 'CLCT_UNIX_TM', 'TM_PLAN_NO', 'PHAS_OPER_PLAN_NO']))\n",
|
|
"print(dfs[1].TM_PLAN_NO.unique())\n",
|
|
"# print(dfs[1].TM_PLAN_NO.value_counts())\n",
|
|
"print(dfs[1].PHAS_OPER_PLAN_NO.unique())\n",
|
|
"print(dfs[1].BGNG_HH.unique())\n",
|
|
"print(dfs[1].BGNG_MI.unique())\n",
|
|
"print(dfs[1].CYCL_HR.unique())\n",
|
|
"print(dfs[1].SPOT_INTS_ID.nunique())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITDWKLYPLAN.csv\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>SPOT_INTS_ID</th>\n",
|
|
" <th>CLCT_UNIX_TM</th>\n",
|
|
" <th>CLCT_DT</th>\n",
|
|
" <th>SUN_TM_PLAN_NO</th>\n",
|
|
" <th>MON_TM_PLAN_NO</th>\n",
|
|
" <th>TUE_TM_PLAN_NO</th>\n",
|
|
" <th>WED_TM_PLAN_NO</th>\n",
|
|
" <th>THU_TM_PLAN_NO</th>\n",
|
|
" <th>FRI_TM_PLAN_NO</th>\n",
|
|
" <th>SAT_TM_PLAN_NO</th>\n",
|
|
" <th>SUN_HR_PLAN_NO</th>\n",
|
|
" <th>MON_HR_PLAN_NO</th>\n",
|
|
" <th>TUE_HR_PLAN_NO</th>\n",
|
|
" <th>WED_HR_PLAN_NO</th>\n",
|
|
" <th>THU_HR_PLAN_NO</th>\n",
|
|
" <th>FRI_HR_PLAN_NO</th>\n",
|
|
" <th>SAT_HR_PLAN_NO</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>6277</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>6276</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>6275</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>6274</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>6273</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5</th>\n",
|
|
" <td>6272</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>6</th>\n",
|
|
" <td>6271</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7</th>\n",
|
|
" <td>5462</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>8</th>\n",
|
|
" <td>5461</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>9</th>\n",
|
|
" <td>5460</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3062</th>\n",
|
|
" <td>1023</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3063</th>\n",
|
|
" <td>1022</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3064</th>\n",
|
|
" <td>1021</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3065</th>\n",
|
|
" <td>1020</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3066</th>\n",
|
|
" <td>1019</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3067</th>\n",
|
|
" <td>1018</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3068</th>\n",
|
|
" <td>1017</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3069</th>\n",
|
|
" <td>1016</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3070</th>\n",
|
|
" <td>1015</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3071</th>\n",
|
|
" <td>1014</td>\n",
|
|
" <td>1701702017</td>\n",
|
|
" <td>20231205</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</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",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>3072 rows × 17 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID CLCT_UNIX_TM CLCT_DT SUN_TM_PLAN_NO MON_TM_PLAN_NO \\\n",
|
|
"0 6277 1701702017 20231205 4 2 \n",
|
|
"1 6276 1701702017 20231205 4 2 \n",
|
|
"2 6275 1701702017 20231205 4 2 \n",
|
|
"3 6274 1701702017 20231205 4 2 \n",
|
|
"4 6273 1701702017 20231205 4 2 \n",
|
|
"5 6272 1701702017 20231205 4 2 \n",
|
|
"6 6271 1701702017 20231205 4 2 \n",
|
|
"7 5462 1701702017 20231205 4 2 \n",
|
|
"8 5461 1701702017 20231205 4 2 \n",
|
|
"9 5460 1701702017 20231205 0 0 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"3062 1023 1701702017 20231205 4 2 \n",
|
|
"3063 1022 1701702017 20231205 4 2 \n",
|
|
"3064 1021 1701702017 20231205 4 2 \n",
|
|
"3065 1020 1701702017 20231205 4 2 \n",
|
|
"3066 1019 1701702017 20231205 4 2 \n",
|
|
"3067 1018 1701702017 20231205 4 2 \n",
|
|
"3068 1017 1701702017 20231205 4 2 \n",
|
|
"3069 1016 1701702017 20231205 4 2 \n",
|
|
"3070 1015 1701702017 20231205 4 2 \n",
|
|
"3071 1014 1701702017 20231205 4 2 \n",
|
|
"\n",
|
|
" TUE_TM_PLAN_NO WED_TM_PLAN_NO THU_TM_PLAN_NO FRI_TM_PLAN_NO \\\n",
|
|
"0 1 1 1 1 \n",
|
|
"1 1 1 1 1 \n",
|
|
"2 1 1 1 1 \n",
|
|
"3 1 1 1 1 \n",
|
|
"4 1 1 1 1 \n",
|
|
"5 1 1 1 1 \n",
|
|
"6 1 1 1 1 \n",
|
|
"7 1 1 1 1 \n",
|
|
"8 1 1 1 1 \n",
|
|
"9 0 0 0 0 \n",
|
|
"... ... ... ... ... \n",
|
|
"3062 1 1 1 1 \n",
|
|
"3063 1 1 1 1 \n",
|
|
"3064 1 1 1 1 \n",
|
|
"3065 1 1 1 1 \n",
|
|
"3066 1 1 1 1 \n",
|
|
"3067 1 1 1 1 \n",
|
|
"3068 1 1 1 1 \n",
|
|
"3069 1 1 1 1 \n",
|
|
"3070 1 1 1 1 \n",
|
|
"3071 1 1 1 1 \n",
|
|
"\n",
|
|
" SAT_TM_PLAN_NO SUN_HR_PLAN_NO MON_HR_PLAN_NO TUE_HR_PLAN_NO \\\n",
|
|
"0 3 1 1 1 \n",
|
|
"1 3 1 1 1 \n",
|
|
"2 3 1 1 1 \n",
|
|
"3 3 1 1 1 \n",
|
|
"4 3 1 1 1 \n",
|
|
"5 3 1 1 1 \n",
|
|
"6 3 1 1 1 \n",
|
|
"7 3 1 1 1 \n",
|
|
"8 3 1 1 1 \n",
|
|
"9 0 0 0 0 \n",
|
|
"... ... ... ... ... \n",
|
|
"3062 3 1 1 1 \n",
|
|
"3063 3 1 1 1 \n",
|
|
"3064 3 1 1 1 \n",
|
|
"3065 3 1 1 1 \n",
|
|
"3066 3 1 1 1 \n",
|
|
"3067 3 1 1 1 \n",
|
|
"3068 3 1 1 1 \n",
|
|
"3069 3 1 1 1 \n",
|
|
"3070 3 1 1 1 \n",
|
|
"3071 3 1 1 1 \n",
|
|
"\n",
|
|
" WED_HR_PLAN_NO THU_HR_PLAN_NO FRI_HR_PLAN_NO SAT_HR_PLAN_NO \n",
|
|
"0 1 1 1 1 \n",
|
|
"1 1 1 1 1 \n",
|
|
"2 1 1 1 1 \n",
|
|
"3 1 1 1 1 \n",
|
|
"4 1 1 1 1 \n",
|
|
"5 1 1 1 1 \n",
|
|
"6 1 1 1 1 \n",
|
|
"7 1 1 1 1 \n",
|
|
"8 1 1 1 1 \n",
|
|
"9 0 0 0 0 \n",
|
|
"... ... ... ... ... \n",
|
|
"3062 1 1 1 1 \n",
|
|
"3063 1 1 1 1 \n",
|
|
"3064 1 1 1 1 \n",
|
|
"3065 1 1 1 1 \n",
|
|
"3066 1 1 1 1 \n",
|
|
"3067 1 1 1 1 \n",
|
|
"3068 1 1 1 1 \n",
|
|
"3069 1 1 1 1 \n",
|
|
"3070 1 1 1 1 \n",
|
|
"3071 1 1 1 1 \n",
|
|
"\n",
|
|
"[3072 rows x 17 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"3072"
|
|
]
|
|
},
|
|
"execution_count": 6,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 주간시각제어 # related to weeklyplan\n",
|
|
"print(names[2])\n",
|
|
"pd.set_option('display.min_rows', 20)\n",
|
|
"display(dfs[2])\n",
|
|
"dfs[2].SPOT_INTS_ID.value_counts().max()\n",
|
|
"dfs[2].SPOT_INTS_ID.nunique()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 7,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSINTSSGNLCNFGINFO.csv\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>CRSW_1_EDGE_ID</th>\n",
|
|
" <th>CRSW_1_GREN_HR</th>\n",
|
|
" <th>CRSW_2_EDGE_ID</th>\n",
|
|
" <th>CRSW_2_GREN_HR</th>\n",
|
|
" <th>CRSW_3_EDGE_ID</th>\n",
|
|
" <th>CRSW_3_GREN_HR</th>\n",
|
|
" <th>CRSW_4_EDGE_ID</th>\n",
|
|
" <th>CRSW_4_GREN_HR</th>\n",
|
|
" <th>CRSW_5_EDGE_ID</th>\n",
|
|
" <th>CRSW_5_GREN_HR</th>\n",
|
|
" <th>ENTR_EDGE_ID</th>\n",
|
|
" <th>ENTR_MVMT_CD</th>\n",
|
|
" <th>EXIT_EDGE_ID</th>\n",
|
|
" <th>EXIT_MVMT_CD</th>\n",
|
|
" <th>INTS_GROP_ID</th>\n",
|
|
" <th>INTS_LAT</th>\n",
|
|
" <th>INTS_LOT</th>\n",
|
|
" <th>INTS_NM</th>\n",
|
|
" <th>INTS_SE_CD</th>\n",
|
|
" <th>MAJR_INTS_SE_CD</th>\n",
|
|
" <th>MAJR_ROAD_SE_CD</th>\n",
|
|
" <th>MIN_GREN_HR</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>PBADMS_DSTT_CD</th>\n",
|
|
" <th>PHAS_CTRL_CD</th>\n",
|
|
" <th>PHAS_NO</th>\n",
|
|
" <th>RED_HR</th>\n",
|
|
" <th>RING_SE_CD</th>\n",
|
|
" <th>RMRK</th>\n",
|
|
" <th>SGLG_LAT</th>\n",
|
|
" <th>SGLG_LOT</th>\n",
|
|
" <th>SPOT_CAMR_ID</th>\n",
|
|
" <th>SPOT_INTS_ID</th>\n",
|
|
" <th>SPOT_INTS_SN</th>\n",
|
|
" <th>SPOT_INTS_TYPE_CD</th>\n",
|
|
" <th>TURN_CLSF_CD</th>\n",
|
|
" <th>UTRN_ENTR_EDGE_ID</th>\n",
|
|
" <th>UTRN_ENTR_MVMT_CD</th>\n",
|
|
" <th>YELW_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476745566_02</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>476761314_01_01</td>\n",
|
|
" <td>6.0</td>\n",
|
|
" <td>51</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서운초교4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>16.0</td>\n",
|
|
" <td>191984</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7089</td>\n",
|
|
" <td>1378</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>476749048_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>476748603_02_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>476748604_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476746944_02_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>476748607_01</td>\n",
|
|
" <td>4.0</td>\n",
|
|
" <td>62</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>새벌로4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>cluster_192187_192191</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7090</td>\n",
|
|
" <td>1379</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>5.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>476749048_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>476748603_02_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>476748604_01</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476746944_02_01</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>476749046_01</td>\n",
|
|
" <td>2.0</td>\n",
|
|
" <td>62</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>새벌로4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>cluster_192187_192191</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7090</td>\n",
|
|
" <td>1379</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>l</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>5.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>476748607_02</td>\n",
|
|
" <td>39.0</td>\n",
|
|
" <td>476746944_02_01</td>\n",
|
|
" <td>39.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476748603_02_01</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>476749046_01</td>\n",
|
|
" <td>2.0</td>\n",
|
|
" <td>62</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>새벌로4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>42.0</td>\n",
|
|
" <td>cluster_192187_192191</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7090</td>\n",
|
|
" <td>1379</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>4.0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>14319</th>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476746529_02_01</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>476745566_01</td>\n",
|
|
" <td>2.0</td>\n",
|
|
" <td>51</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서운초교4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>16.0</td>\n",
|
|
" <td>191984</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7089</td>\n",
|
|
" <td>1378</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>l</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>14320</th>\n",
|
|
" <td>476745566_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476758740_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476761314_01_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476746529_02_01</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17.0</td>\n",
|
|
" <td>51</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서운초교4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>191984</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7089</td>\n",
|
|
" <td>1378</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>0.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>14321</th>\n",
|
|
" <td>476745566_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476758740_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476761314_01_02</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>476746529_02_01</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17.0</td>\n",
|
|
" <td>51</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서운초교4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>46.0</td>\n",
|
|
" <td>191984</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7089</td>\n",
|
|
" <td>1378</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>0.0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>14322</th>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476745566_02</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>476758740_01</td>\n",
|
|
" <td>4.0</td>\n",
|
|
" <td>51</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서운초교4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>16.0</td>\n",
|
|
" <td>191984</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7089</td>\n",
|
|
" <td>1378</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>l</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3.0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>14323 rows × 39 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSW_1_EDGE_ID CRSW_1_GREN_HR CRSW_2_EDGE_ID CRSW_2_GREN_HR \\\n",
|
|
"0 NaN NaN NaN NaN \n",
|
|
"1 476749048_01 20.0 476748603_02_01 20.0 \n",
|
|
"2 476749048_01 20.0 476748603_02_01 20.0 \n",
|
|
"3 476748607_02 39.0 476746944_02_01 39.0 \n",
|
|
"... ... ... ... ... \n",
|
|
"14319 NaN NaN NaN NaN \n",
|
|
"14320 476745566_02 46.0 476758740_02 46.0 \n",
|
|
"14321 476745566_02 46.0 476758740_02 46.0 \n",
|
|
"14322 NaN NaN NaN NaN \n",
|
|
"\n",
|
|
" CRSW_3_EDGE_ID CRSW_3_GREN_HR CRSW_4_EDGE_ID CRSW_4_GREN_HR \\\n",
|
|
"0 NaN NaN NaN NaN \n",
|
|
"1 476748604_01 20.0 NaN NaN \n",
|
|
"2 476748604_01 20.0 NaN NaN \n",
|
|
"3 NaN NaN NaN NaN \n",
|
|
"... ... ... ... ... \n",
|
|
"14319 NaN NaN NaN NaN \n",
|
|
"14320 476761314_01_02 46.0 476746529_02_01 46.0 \n",
|
|
"14321 476761314_01_02 46.0 476746529_02_01 46.0 \n",
|
|
"14322 NaN NaN NaN NaN \n",
|
|
"\n",
|
|
" CRSW_5_EDGE_ID CRSW_5_GREN_HR ENTR_EDGE_ID ENTR_MVMT_CD \\\n",
|
|
"0 NaN NaN 476745566_02 2 \n",
|
|
"1 NaN NaN 476746944_02_01 8 \n",
|
|
"2 NaN NaN 476746944_02_01 3 \n",
|
|
"3 NaN NaN 476748603_02_01 6 \n",
|
|
"... ... ... ... ... \n",
|
|
"14319 NaN NaN 476746529_02_01 3 \n",
|
|
"14320 NaN NaN NaN 17 \n",
|
|
"14321 NaN NaN NaN 17 \n",
|
|
"14322 NaN NaN 476745566_02 5 \n",
|
|
"\n",
|
|
" EXIT_EDGE_ID EXIT_MVMT_CD INTS_GROP_ID INTS_LAT INTS_LOT \\\n",
|
|
"0 476761314_01_01 6.0 51 NaN NaN \n",
|
|
"1 476748607_01 4.0 62 NaN NaN \n",
|
|
"2 476749046_01 2.0 62 NaN NaN \n",
|
|
"3 476749046_01 2.0 62 NaN NaN \n",
|
|
"... ... ... ... ... ... \n",
|
|
"14319 476745566_01 2.0 51 NaN NaN \n",
|
|
"14320 NaN 17.0 51 NaN NaN \n",
|
|
"14321 NaN 17.0 51 NaN NaN \n",
|
|
"14322 476758740_01 4.0 51 NaN NaN \n",
|
|
"\n",
|
|
" INTS_NM INTS_SE_CD MAJR_INTS_SE_CD MAJR_ROAD_SE_CD MIN_GREN_HR \\\n",
|
|
"0 서운초교4거리 2 1 10 16.0 \n",
|
|
"1 새벌로4거리 2 1 10 20.0 \n",
|
|
"2 새벌로4거리 2 1 10 20.0 \n",
|
|
"3 새벌로4거리 2 1 20 42.0 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"14319 서운초교4거리 2 1 10 16.0 \n",
|
|
"14320 서운초교4거리 2 1 10 46.0 \n",
|
|
"14321 서운초교4거리 2 1 10 46.0 \n",
|
|
"14322 서운초교4거리 2 1 10 16.0 \n",
|
|
"\n",
|
|
" NODE_ID PBADMS_DSTT_CD PHAS_CTRL_CD PHAS_NO RED_HR \\\n",
|
|
"0 191984 23070 1 5 1 \n",
|
|
"1 cluster_192187_192191 23070 1 1 0 \n",
|
|
"2 cluster_192187_192191 23070 1 1 0 \n",
|
|
"3 cluster_192187_192191 23070 1 2 3 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"14319 191984 23070 1 3 2 \n",
|
|
"14320 191984 23070 1 4 0 \n",
|
|
"14321 191984 23070 1 4 0 \n",
|
|
"14322 191984 23070 1 5 1 \n",
|
|
"\n",
|
|
" RING_SE_CD RMRK SGLG_LAT SGLG_LOT SPOT_CAMR_ID SPOT_INTS_ID \\\n",
|
|
"0 B NaN NaN NaN NaN 7089 \n",
|
|
"1 A NaN NaN NaN NaN 7090 \n",
|
|
"2 B NaN NaN NaN NaN 7090 \n",
|
|
"3 A NaN NaN NaN NaN 7090 \n",
|
|
"... ... ... ... ... ... ... \n",
|
|
"14319 B NaN NaN NaN NaN 7089 \n",
|
|
"14320 A NaN NaN NaN NaN 7089 \n",
|
|
"14321 B NaN NaN NaN NaN 7089 \n",
|
|
"14322 A NaN NaN NaN NaN 7089 \n",
|
|
"\n",
|
|
" SPOT_INTS_SN SPOT_INTS_TYPE_CD TURN_CLSF_CD UTRN_ENTR_EDGE_ID \\\n",
|
|
"0 1378 4 s NaN \n",
|
|
"1 1379 4 s NaN \n",
|
|
"2 1379 4 l NaN \n",
|
|
"3 1379 4 s NaN \n",
|
|
"... ... ... ... ... \n",
|
|
"14319 1378 4 l NaN \n",
|
|
"14320 1378 4 NaN NaN \n",
|
|
"14321 1378 4 NaN NaN \n",
|
|
"14322 1378 4 l NaN \n",
|
|
"\n",
|
|
" UTRN_ENTR_MVMT_CD YELW_HR \n",
|
|
"0 NaN 3.0 \n",
|
|
"1 NaN 5.0 \n",
|
|
"2 NaN 5.0 \n",
|
|
"3 NaN 4.0 \n",
|
|
"... ... ... \n",
|
|
"14319 NaN 3.0 \n",
|
|
"14320 NaN 0.0 \n",
|
|
"14321 NaN 0.0 \n",
|
|
"14322 NaN 3.0 \n",
|
|
"\n",
|
|
"[14323 rows x 39 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 교차로 신호구성정보 테이블\n",
|
|
"pd.set_option('display.min_rows', 8)\n",
|
|
"print(names[3])\n",
|
|
"display(dfs[3])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 8,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSINTSSGNLCNFGINFOTMDIFF.csv\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>CRSW_1_EDGE_ID</th>\n",
|
|
" <th>CRSW_1_GREN_HR</th>\n",
|
|
" <th>CRSW_2_EDGE_ID</th>\n",
|
|
" <th>CRSW_2_GREN_HR</th>\n",
|
|
" <th>CRSW_3_EDGE_ID</th>\n",
|
|
" <th>CRSW_3_GREN_HR</th>\n",
|
|
" <th>CRSW_4_EDGE_ID</th>\n",
|
|
" <th>CRSW_4_GREN_HR</th>\n",
|
|
" <th>CRSW_5_EDGE_ID</th>\n",
|
|
" <th>CRSW_5_GREN_HR</th>\n",
|
|
" <th>ENTR_EDGE_ID</th>\n",
|
|
" <th>ENTR_MVMT_CD</th>\n",
|
|
" <th>EXIT_EDGE_ID</th>\n",
|
|
" <th>EXIT_MVMT_CD</th>\n",
|
|
" <th>INTS_GROP_ID</th>\n",
|
|
" <th>INTS_LAT</th>\n",
|
|
" <th>INTS_LOT</th>\n",
|
|
" <th>INTS_NM</th>\n",
|
|
" <th>INTS_SE_CD</th>\n",
|
|
" <th>MAJR_INTS_SE_CD</th>\n",
|
|
" <th>MAJR_ROAD_SE_CD</th>\n",
|
|
" <th>MIN_GREN_HR</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>PBADMS_DSTT_CD</th>\n",
|
|
" <th>PHAS_CTRL_CD</th>\n",
|
|
" <th>PHAS_NO</th>\n",
|
|
" <th>RED_HR</th>\n",
|
|
" <th>RING_SE_CD</th>\n",
|
|
" <th>RMRK</th>\n",
|
|
" <th>SGLG_LAT</th>\n",
|
|
" <th>SGLG_LOT</th>\n",
|
|
" <th>SPOT_CAMR_ID</th>\n",
|
|
" <th>SPOT_INTS_ID</th>\n",
|
|
" <th>SPOT_INTS_SN</th>\n",
|
|
" <th>SPOT_INTS_TYPE_CD</th>\n",
|
|
" <th>TURN_CLSF_CD</th>\n",
|
|
" <th>UTRN_ENTR_EDGE_ID</th>\n",
|
|
" <th>UTRN_ENTR_MVMT_CD</th>\n",
|
|
" <th>YELW_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>476634372_02</td>\n",
|
|
" <td>33.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476601951_01_02</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>476601948_01</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>99</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서림초교3거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>36</td>\n",
|
|
" <td>187391</td>\n",
|
|
" <td>23020</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>211</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>l</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>4</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>476634372_02</td>\n",
|
|
" <td>33.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>99</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서림초교3거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>36</td>\n",
|
|
" <td>187391</td>\n",
|
|
" <td>23020</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>211</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>476601951_01_02</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476634372_02</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>476601948_01</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>99</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서림초교3거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>187391</td>\n",
|
|
" <td>23020</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>211</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>476601951_01_02</td>\n",
|
|
" <td>20.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476601948_02</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>476634372_01</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>99</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>서림초교3거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>187391</td>\n",
|
|
" <td>23020</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>211</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>126</th>\n",
|
|
" <td>476710955_01</td>\n",
|
|
" <td>27.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>53</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>작전공원4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>29</td>\n",
|
|
" <td>551520</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>1376</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>127</th>\n",
|
|
" <td>476710955_01</td>\n",
|
|
" <td>27.0</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>53</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>작전공원4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>29</td>\n",
|
|
" <td>551520</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>1376</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>128</th>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476710955_01</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>476750406_0202_02</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>53</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>작전공원4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>551520</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>A</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>1376</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>129</th>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>476750406_0202_01</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>476710955_02</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>53</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>작전공원4거리</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>21</td>\n",
|
|
" <td>551520</td>\n",
|
|
" <td>23070</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>B</td>\n",
|
|
" <td>시차제</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>1376</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>s</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>130 rows × 39 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" CRSW_1_EDGE_ID CRSW_1_GREN_HR CRSW_2_EDGE_ID CRSW_2_GREN_HR \\\n",
|
|
"0 476634372_02 33.0 NaN NaN \n",
|
|
"1 476634372_02 33.0 NaN NaN \n",
|
|
"2 476601951_01_02 20.0 NaN NaN \n",
|
|
"3 476601951_01_02 20.0 NaN NaN \n",
|
|
".. ... ... ... ... \n",
|
|
"126 476710955_01 27.0 NaN NaN \n",
|
|
"127 476710955_01 27.0 NaN NaN \n",
|
|
"128 NaN NaN NaN NaN \n",
|
|
"129 NaN NaN NaN NaN \n",
|
|
"\n",
|
|
" CRSW_3_EDGE_ID CRSW_3_GREN_HR CRSW_4_EDGE_ID CRSW_4_GREN_HR \\\n",
|
|
"0 NaN NaN NaN NaN \n",
|
|
"1 NaN NaN NaN NaN \n",
|
|
"2 NaN NaN NaN NaN \n",
|
|
"3 NaN NaN NaN NaN \n",
|
|
".. ... ... ... ... \n",
|
|
"126 NaN NaN NaN NaN \n",
|
|
"127 NaN NaN NaN NaN \n",
|
|
"128 NaN NaN NaN NaN \n",
|
|
"129 NaN NaN NaN NaN \n",
|
|
"\n",
|
|
" CRSW_5_EDGE_ID CRSW_5_GREN_HR ENTR_EDGE_ID ENTR_MVMT_CD \\\n",
|
|
"0 NaN NaN 476601951_01_02 5 \n",
|
|
"1 NaN NaN NaN 17 \n",
|
|
"2 NaN NaN 476634372_02 8 \n",
|
|
"3 NaN NaN 476601948_02 4 \n",
|
|
".. ... ... ... ... \n",
|
|
"126 NaN NaN NaN 17 \n",
|
|
"127 NaN NaN NaN 17 \n",
|
|
"128 NaN NaN 476710955_01 6 \n",
|
|
"129 NaN NaN 476750406_0202_01 2 \n",
|
|
"\n",
|
|
" EXIT_EDGE_ID EXIT_MVMT_CD INTS_GROP_ID INTS_LAT INTS_LOT \\\n",
|
|
"0 476601948_01 4 99 NaN NaN \n",
|
|
"1 NaN 17 99 NaN NaN \n",
|
|
"2 476601948_01 4 99 NaN NaN \n",
|
|
"3 476634372_01 8 99 NaN NaN \n",
|
|
".. ... ... ... ... ... \n",
|
|
"126 NaN 17 53 NaN NaN \n",
|
|
"127 NaN 17 53 NaN NaN \n",
|
|
"128 476750406_0202_02 2 53 NaN NaN \n",
|
|
"129 476710955_02 6 53 NaN NaN \n",
|
|
"\n",
|
|
" INTS_NM INTS_SE_CD MAJR_INTS_SE_CD MAJR_ROAD_SE_CD MIN_GREN_HR \\\n",
|
|
"0 서림초교3거리 2 1 10 36 \n",
|
|
"1 서림초교3거리 2 1 10 36 \n",
|
|
"2 서림초교3거리 2 1 20 23 \n",
|
|
"3 서림초교3거리 2 1 20 23 \n",
|
|
".. ... ... ... ... ... \n",
|
|
"126 작전공원4거리 2 2 10 29 \n",
|
|
"127 작전공원4거리 2 2 10 29 \n",
|
|
"128 작전공원4거리 2 2 10 21 \n",
|
|
"129 작전공원4거리 2 2 10 21 \n",
|
|
"\n",
|
|
" NODE_ID PBADMS_DSTT_CD PHAS_CTRL_CD PHAS_NO RED_HR RING_SE_CD RMRK \\\n",
|
|
"0 187391 23020 2 1 3 A 시차제 \n",
|
|
"1 187391 23020 2 1 3 B 시차제 \n",
|
|
"2 187391 23020 2 2 3 A 시차제 \n",
|
|
"3 187391 23020 2 2 3 B 시차제 \n",
|
|
".. ... ... ... ... ... ... ... \n",
|
|
"126 551520 23070 2 3 2 A 시차제 \n",
|
|
"127 551520 23070 2 3 2 B 시차제 \n",
|
|
"128 551520 23070 2 4 2 A 시차제 \n",
|
|
"129 551520 23070 2 4 2 B 시차제 \n",
|
|
"\n",
|
|
" SGLG_LAT SGLG_LOT SPOT_CAMR_ID SPOT_INTS_ID SPOT_INTS_SN \\\n",
|
|
"0 NaN NaN NaN 2032 211 \n",
|
|
"1 NaN NaN NaN 2032 211 \n",
|
|
"2 NaN NaN NaN 2032 211 \n",
|
|
"3 NaN NaN NaN 2032 211 \n",
|
|
".. ... ... ... ... ... \n",
|
|
"126 NaN NaN NaN 7087 1376 \n",
|
|
"127 NaN NaN NaN 7087 1376 \n",
|
|
"128 NaN NaN NaN 7087 1376 \n",
|
|
"129 NaN NaN NaN 7087 1376 \n",
|
|
"\n",
|
|
" SPOT_INTS_TYPE_CD TURN_CLSF_CD UTRN_ENTR_EDGE_ID UTRN_ENTR_MVMT_CD \\\n",
|
|
"0 4 l NaN NaN \n",
|
|
"1 4 NaN NaN NaN \n",
|
|
"2 4 s NaN NaN \n",
|
|
"3 4 s NaN NaN \n",
|
|
".. ... ... ... ... \n",
|
|
"126 4 NaN NaN NaN \n",
|
|
"127 4 NaN NaN NaN \n",
|
|
"128 4 s NaN NaN \n",
|
|
"129 4 s NaN NaN \n",
|
|
"\n",
|
|
" YELW_HR \n",
|
|
"0 4 \n",
|
|
"1 0 \n",
|
|
"2 0 \n",
|
|
"3 0 \n",
|
|
".. ... \n",
|
|
"126 3 \n",
|
|
"127 3 \n",
|
|
"128 3 \n",
|
|
"129 3 \n",
|
|
"\n",
|
|
"[130 rows x 39 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 교차로 신호구성정보(시차제) 테이블\n",
|
|
"print(names[4])\n",
|
|
"display(dfs[4])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 9,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSPHASINFO.csv\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>MAJR_INTS_SE_CD</th>\n",
|
|
" <th>MAJR_ROAD_SE_CD</th>\n",
|
|
" <th>MIN_GREN_HR</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>PHAS_NO</th>\n",
|
|
" <th>SGNL_STTS</th>\n",
|
|
" <th>SPOT_INTS_ID</th>\n",
|
|
" <th>YELW_HR</th>\n",
|
|
" <th>RED_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>181661</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>grrrrgGgrrrgG</td>\n",
|
|
" <td>2025</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>42</td>\n",
|
|
" <td>181661</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>gGGGrgrgGGGgr</td>\n",
|
|
" <td>2025</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>12</td>\n",
|
|
" <td>181661</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>gGGGGgrgrrrgr</td>\n",
|
|
" <td>2025</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>181667</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>ggrrrgGGr</td>\n",
|
|
" <td>1016</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>1</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7029</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>16</td>\n",
|
|
" <td>cluster_cluster_191152_193095_cluster_192712_1...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>rrrGrrrrrrrrrGrrrrrr</td>\n",
|
|
" <td>7011</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7030</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>33</td>\n",
|
|
" <td>cluster_cluster_191152_193095_cluster_192712_1...</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>rrrrGGGrrGrrrrGGGrrG</td>\n",
|
|
" <td>7011</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7031</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>15</td>\n",
|
|
" <td>cluster_cluster_191152_193095_cluster_192712_1...</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>rrrrrrrGGrrrrrrrrGGr</td>\n",
|
|
" <td>7011</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>2</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7032</th>\n",
|
|
" <td>1</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>cluster_cluster_191152_193095_cluster_192712_1...</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>GGGrrrrrrrGGGrrrrrrr</td>\n",
|
|
" <td>7011</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>7033 rows × 9 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" MAJR_INTS_SE_CD MAJR_ROAD_SE_CD MIN_GREN_HR \\\n",
|
|
"0 1 10 38 \n",
|
|
"1 1 20 42 \n",
|
|
"2 1 10 12 \n",
|
|
"3 1 10 26 \n",
|
|
"... ... ... ... \n",
|
|
"7029 1 10 16 \n",
|
|
"7030 1 20 33 \n",
|
|
"7031 1 10 15 \n",
|
|
"7032 1 10 52 \n",
|
|
"\n",
|
|
" NODE_ID PHAS_NO \\\n",
|
|
"0 181661 1 \n",
|
|
"1 181661 2 \n",
|
|
"2 181661 3 \n",
|
|
"3 181667 1 \n",
|
|
"... ... ... \n",
|
|
"7029 cluster_cluster_191152_193095_cluster_192712_1... 1 \n",
|
|
"7030 cluster_cluster_191152_193095_cluster_192712_1... 2 \n",
|
|
"7031 cluster_cluster_191152_193095_cluster_192712_1... 3 \n",
|
|
"7032 cluster_cluster_191152_193095_cluster_192712_1... 4 \n",
|
|
"\n",
|
|
" SGNL_STTS SPOT_INTS_ID YELW_HR RED_HR \n",
|
|
"0 grrrrgGgrrrgG 2025 4 2 \n",
|
|
"1 gGGGrgrgGGGgr 2025 5 3 \n",
|
|
"2 gGGGGgrgrrrgr 2025 4 3 \n",
|
|
"3 ggrrrgGGr 1016 4 1 \n",
|
|
"... ... ... ... ... \n",
|
|
"7029 rrrGrrrrrrrrrGrrrrrr 7011 4 1 \n",
|
|
"7030 rrrrGGGrrGrrrrGGGrrG 7011 5 0 \n",
|
|
"7031 rrrrrrrGGrrrrrrrrGGr 7011 4 2 \n",
|
|
"7032 GGGrrrrrrrGGGrrrrrrr 7011 5 0 \n",
|
|
"\n",
|
|
"[7033 rows x 9 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"1592\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# 현시정보 테이블\n",
|
|
"print(names[5])\n",
|
|
"display(dfs[5])\n",
|
|
"print(dfs[5].SPOT_INTS_ID.nunique())"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 10,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSPHASINFOTMDIFF.csv\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>SPOT_INTS_ID</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>MAJR_INTS_SE_CD</th>\n",
|
|
" <th>PHAS_NO</th>\n",
|
|
" <th>SGNL_STTS</th>\n",
|
|
" <th>MIN_GREN_HR</th>\n",
|
|
" <th>YELW_HR</th>\n",
|
|
" <th>MAJR_ROAD_SE_CD</th>\n",
|
|
" <th>RED_HR</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>gGGGrrrrrrgrrrgrrrrrr</td>\n",
|
|
" <td>16</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>grrrrrrGGGgrrrgrrrrGG</td>\n",
|
|
" <td>11</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>grrrrrrGGGgrrrgrrrrGG</td>\n",
|
|
" <td>14</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>grrrrrrGrrgrrrgrrrGrr</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>60</th>\n",
|
|
" <td>5142</td>\n",
|
|
" <td>184342</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>gGGGGGggrrrrrgr</td>\n",
|
|
" <td>15</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>61</th>\n",
|
|
" <td>5142</td>\n",
|
|
" <td>184342</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>gGGGGrggGGGGrgr</td>\n",
|
|
" <td>56</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>62</th>\n",
|
|
" <td>5142</td>\n",
|
|
" <td>184342</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>grrrrrggrrrrrgG</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>63</th>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>grrrrrrrrrgGGGgrrrrrr</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>64 rows × 9 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID NODE_ID \\\n",
|
|
"0 5128 cluster_184518_SN20220718115335D_cluster_58054... \n",
|
|
"1 5128 cluster_184518_SN20220718115335D_cluster_58054... \n",
|
|
"2 5128 cluster_184518_SN20220718115335D_cluster_58054... \n",
|
|
"3 5128 cluster_184518_SN20220718115335D_cluster_58054... \n",
|
|
".. ... ... \n",
|
|
"60 5142 184342 \n",
|
|
"61 5142 184342 \n",
|
|
"62 5142 184342 \n",
|
|
"63 5128 cluster_184518_SN20220718115335D_cluster_58054... \n",
|
|
"\n",
|
|
" MAJR_INTS_SE_CD PHAS_NO SGNL_STTS MIN_GREN_HR YELW_HR \\\n",
|
|
"0 1 5 gGGGrrrrrrgrrrgrrrrrr 16 5 \n",
|
|
"1 1 4 grrrrrrGGGgrrrgrrrrGG 11 5 \n",
|
|
"2 1 3 grrrrrrGGGgrrrgrrrrGG 14 0 \n",
|
|
"3 1 2 grrrrrrGrrgrrrgrrrGrr 34 4 \n",
|
|
".. ... ... ... ... ... \n",
|
|
"60 1 3 gGGGGGggrrrrrgr 15 4 \n",
|
|
"61 1 2 gGGGGrggGGGGrgr 56 4 \n",
|
|
"62 1 1 grrrrrggrrrrrgG 34 4 \n",
|
|
"63 1 6 grrrrrrrrrgGGGgrrrrrr 22 5 \n",
|
|
"\n",
|
|
" MAJR_ROAD_SE_CD RED_HR \n",
|
|
"0 10 1 \n",
|
|
"1 10 0 \n",
|
|
"2 10 0 \n",
|
|
"3 20 0 \n",
|
|
".. ... ... \n",
|
|
"60 10 0 \n",
|
|
"61 20 1 \n",
|
|
"62 10 1 \n",
|
|
"63 10 3 \n",
|
|
"\n",
|
|
"[64 rows x 9 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 현시정보(시차제) 테이블\n",
|
|
"print(names[6])\n",
|
|
"display(dfs[6])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 11,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSRGNPRTTNINFO.csv\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>NODE_ID</th>\n",
|
|
" <th>OGDP_SE_CD</th>\n",
|
|
" <th>RGN_PRTTN_CD</th>\n",
|
|
" <th>RGN_PRTTN_NM</th>\n",
|
|
" <th>SPOT_INTS_ID</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>191219</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8016</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>187521</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8014</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>188012</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8011</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>191208</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8005</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>...</th>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>300</th>\n",
|
|
" <td>188237</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8118</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>301</th>\n",
|
|
" <td>cluster_192074_192075_SN20220616160722M_cluste...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8127</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>302</th>\n",
|
|
" <td>192637</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8220</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>303</th>\n",
|
|
" <td>SN20220613170943B</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>서구+동구</td>\n",
|
|
" <td>8040</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>304 rows × 5 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" NODE_ID OGDP_SE_CD \\\n",
|
|
"0 191219 1 \n",
|
|
"1 187521 1 \n",
|
|
"2 188012 1 \n",
|
|
"3 191208 1 \n",
|
|
".. ... ... \n",
|
|
"300 188237 1 \n",
|
|
"301 cluster_192074_192075_SN20220616160722M_cluste... 1 \n",
|
|
"302 192637 1 \n",
|
|
"303 SN20220613170943B 1 \n",
|
|
"\n",
|
|
" RGN_PRTTN_CD RGN_PRTTN_NM SPOT_INTS_ID \n",
|
|
"0 9 서구+동구 8016 \n",
|
|
"1 9 서구+동구 8014 \n",
|
|
"2 9 서구+동구 8011 \n",
|
|
"3 9 서구+동구 8005 \n",
|
|
".. ... ... ... \n",
|
|
"300 9 서구+동구 8118 \n",
|
|
"301 9 서구+동구 8127 \n",
|
|
"302 9 서구+동구 8220 \n",
|
|
"303 9 서구+동구 8040 \n",
|
|
"\n",
|
|
"[304 rows x 5 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"190\n",
|
|
"['서구+동구' '중구' '연수구' '미추홀구' '남동구_하단' '남동구_상단' '부평구_하단' '부평구_상단' '계양구']\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# 지역분할정보 테이블\n",
|
|
"print(names[7])\n",
|
|
"display(dfs[7])\n",
|
|
"print(dfs[7].SPOT_INTS_ID.nunique())\n",
|
|
"districts = dfs[7].RGN_PRTTN_NM.unique()\n",
|
|
"print(districts)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 12,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSSMLNFLFMTHSTR.csv\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>ACSR_YN</th>\n",
|
|
" <th>BGNG_UNIX_TM</th>\n",
|
|
" <th>END_UNIX_TM</th>\n",
|
|
" <th>FILE_NM</th>\n",
|
|
" <th>FLFMT_BGNG_UNIX_TM</th>\n",
|
|
" <th>FLFMT_END_UNIX_TM</th>\n",
|
|
" <th>PRGRS_STTS_CD</th>\n",
|
|
" <th>RGN_PRTTN_CD</th>\n",
|
|
" <th>SMLN_SE_CD</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1671682200</td>\n",
|
|
" <td>1671682500</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1671682560</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1671683400</td>\n",
|
|
" <td>1671683700</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1671682560</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1671682200</td>\n",
|
|
" <td>1671682500</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1671682560</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1671682200</td>\n",
|
|
" <td>1671682500</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1671682560</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>1</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>20726</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1672303800</td>\n",
|
|
" <td>1672304100</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1672302960</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>20727</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1672303800</td>\n",
|
|
" <td>1672304100</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1672302960</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>20728</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1672303800</td>\n",
|
|
" <td>1672304100</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1672302960</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>20729</th>\n",
|
|
" <td>Y</td>\n",
|
|
" <td>1672303800</td>\n",
|
|
" <td>1672304100</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1672302960</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>20730 rows × 9 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" ACSR_YN BGNG_UNIX_TM END_UNIX_TM FILE_NM FLFMT_BGNG_UNIX_TM \\\n",
|
|
"0 Y 1671682200 1671682500 NaN 1671682560 \n",
|
|
"1 Y 1671683400 1671683700 NaN 1671682560 \n",
|
|
"2 Y 1671682200 1671682500 NaN 1671682560 \n",
|
|
"3 Y 1671682200 1671682500 NaN 1671682560 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"20726 Y 1672303800 1672304100 NaN 1672302960 \n",
|
|
"20727 Y 1672303800 1672304100 NaN 1672302960 \n",
|
|
"20728 Y 1672303800 1672304100 NaN 1672302960 \n",
|
|
"20729 Y 1672303800 1672304100 NaN 1672302960 \n",
|
|
"\n",
|
|
" FLFMT_END_UNIX_TM PRGRS_STTS_CD RGN_PRTTN_CD SMLN_SE_CD \n",
|
|
"0 NaN 1 8 1 \n",
|
|
"1 NaN 1 8 1 \n",
|
|
"2 NaN 1 7 1 \n",
|
|
"3 NaN 1 9 1 \n",
|
|
"... ... ... ... ... \n",
|
|
"20726 NaN 1 0 1 \n",
|
|
"20727 NaN 1 3 1 \n",
|
|
"20728 NaN 1 6 1 \n",
|
|
"20729 NaN 1 9 1 \n",
|
|
"\n",
|
|
"[20730 rows x 9 columns]"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 시뮬레이션수행이력 테이블\n",
|
|
"print(names[8])\n",
|
|
"display(dfs[8])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 13,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"SOITSSPOTINTSTMDIFF.csv\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>BGNG_UNIX_TM</th>\n",
|
|
" <th>DOTW_SE_CD</th>\n",
|
|
" <th>END_UNIX_TM</th>\n",
|
|
" <th>NODE_ID</th>\n",
|
|
" <th>SEQ</th>\n",
|
|
" <th>SPOT_INTS_ID</th>\n",
|
|
" <th>TM_SEQ</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>29400</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>31200</td>\n",
|
|
" <td>187391</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>29400</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>31200</td>\n",
|
|
" <td>188406</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2032</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>189262</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>4091</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>64800</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>72000</td>\n",
|
|
" <td>189262</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>4091</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>4</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184365</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5006</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>187778</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5040</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>6</th>\n",
|
|
" <td>61200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>68400</td>\n",
|
|
" <td>187778</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>5040</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>7</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184368</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5045</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>8</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184370</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5046</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>9</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184530</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5047</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>10</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184513</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5107</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>11</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184421</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5113</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>12</th>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>50400</td>\n",
|
|
" <td>cluster_184518_SN20220718115335D_cluster_58054...</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5128</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>13</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>201992</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5132</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>14</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>184342</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5142</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>15</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>cluster_184491_184902_184903_186126_186289</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5216</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>16</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>32400</td>\n",
|
|
" <td>188641</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>5285</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>17</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>72000</td>\n",
|
|
" <td>191584</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>18</th>\n",
|
|
" <td>25200</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>72000</td>\n",
|
|
" <td>551520</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>7087</td>\n",
|
|
" <td>NaN</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" BGNG_UNIX_TM DOTW_SE_CD END_UNIX_TM \\\n",
|
|
"0 29400 1 31200 \n",
|
|
"1 29400 1 31200 \n",
|
|
"2 25200 2 32400 \n",
|
|
"3 64800 2 72000 \n",
|
|
"4 25200 1 32400 \n",
|
|
"5 25200 2 32400 \n",
|
|
"6 61200 2 68400 \n",
|
|
"7 25200 2 32400 \n",
|
|
"8 25200 2 32400 \n",
|
|
"9 25200 1 32400 \n",
|
|
"10 25200 2 32400 \n",
|
|
"11 25200 2 32400 \n",
|
|
"12 32400 1 50400 \n",
|
|
"13 25200 2 32400 \n",
|
|
"14 25200 2 32400 \n",
|
|
"15 25200 2 32400 \n",
|
|
"16 25200 1 32400 \n",
|
|
"17 25200 2 72000 \n",
|
|
"18 25200 2 72000 \n",
|
|
"\n",
|
|
" NODE_ID SEQ SPOT_INTS_ID \\\n",
|
|
"0 187391 1 2032 \n",
|
|
"1 188406 1 2032 \n",
|
|
"2 189262 1 4091 \n",
|
|
"3 189262 2 4091 \n",
|
|
"4 184365 1 5006 \n",
|
|
"5 187778 1 5040 \n",
|
|
"6 187778 2 5040 \n",
|
|
"7 184368 1 5045 \n",
|
|
"8 184370 1 5046 \n",
|
|
"9 184530 1 5047 \n",
|
|
"10 184513 1 5107 \n",
|
|
"11 184421 1 5113 \n",
|
|
"12 cluster_184518_SN20220718115335D_cluster_58054... 1 5128 \n",
|
|
"13 201992 1 5132 \n",
|
|
"14 184342 1 5142 \n",
|
|
"15 cluster_184491_184902_184903_186126_186289 1 5216 \n",
|
|
"16 188641 1 5285 \n",
|
|
"17 191584 1 7087 \n",
|
|
"18 551520 1 7087 \n",
|
|
"\n",
|
|
" TM_SEQ \n",
|
|
"0 NaN \n",
|
|
"1 NaN \n",
|
|
"2 NaN \n",
|
|
"3 NaN \n",
|
|
"4 NaN \n",
|
|
"5 NaN \n",
|
|
"6 NaN \n",
|
|
"7 NaN \n",
|
|
"8 NaN \n",
|
|
"9 NaN \n",
|
|
"10 NaN \n",
|
|
"11 NaN \n",
|
|
"12 NaN \n",
|
|
"13 NaN \n",
|
|
"14 NaN \n",
|
|
"15 NaN \n",
|
|
"16 NaN \n",
|
|
"17 NaN \n",
|
|
"18 NaN "
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"# 시차제 교차로 정보 테이블\n",
|
|
"print(names[9])\n",
|
|
"display(dfs[9])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"중구 o\n",
|
|
"동구 o\n",
|
|
"미추홀구 o\n",
|
|
"연수구 o\n",
|
|
"남동구 o\n",
|
|
"부평구 o\n",
|
|
"계양구 o\n",
|
|
"서구 o\n",
|
|
"강화군\n",
|
|
"옹진군"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 14,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([5341, 5343, 5345, ..., 5295, 5375, 8574], dtype=int64)"
|
|
]
|
|
},
|
|
"execution_count": 14,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"dfs[0].SPOT_INTS_ID.unique()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 15,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"SPOT_INTS_ID\n",
|
|
"1170 281\n",
|
|
"8202 205\n",
|
|
"8020 205\n",
|
|
"8124 205\n",
|
|
" ... \n",
|
|
"5375 18\n",
|
|
"8089 11\n",
|
|
"8574 3\n",
|
|
"5295 2\n",
|
|
"Name: count, Length: 2896, dtype: int64"
|
|
]
|
|
},
|
|
"execution_count": 15,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"dfs[0].SPOT_INTS_ID.value_counts()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 16,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"frequent_IDs = list(dfs[0].SPOT_INTS_ID.value_counts().index)[:10]"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 17,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"'\\nSELECT * FROM SOITDSPOTINTSOPERHSTR\\nWHERE SPOT_INTS_ID IN (1170, 8202, 8020, 8124, 3138, 8123, 3139, 8031, 3244, 3245)\\n'"
|
|
]
|
|
},
|
|
"execution_count": 17,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"\"\"\"\n",
|
|
"SELECT * FROM SOITDSPOTINTSOPERHSTR LIMIT 300000\n",
|
|
"\"\"\"\n",
|
|
"\n",
|
|
"\"\"\"\n",
|
|
"SELECT * FROM SOITDSPOTINTSOPERHSTR\n",
|
|
"WHERE SPOT_INTS_ID IN (1170, 8202, 8020, 8124, 3138, 8123, 3139, 8031, 3244, 3245)\n",
|
|
"\"\"\""
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 18,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"2023-12-06 00:00:21\n",
|
|
"2023-12-06 10:22:17\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>inter_no</th>\n",
|
|
" <th>date_time</th>\n",
|
|
" <th>제어모드</th>\n",
|
|
" <th>제어상태</th>\n",
|
|
" <th>cycle</th>\n",
|
|
" <th>offset</th>\n",
|
|
" <th>A1_dur</th>\n",
|
|
" <th>A2_dur</th>\n",
|
|
" <th>A3_dur</th>\n",
|
|
" <th>A4_dur</th>\n",
|
|
" <th>A5_dur</th>\n",
|
|
" <th>A6_dur</th>\n",
|
|
" <th>A7_dur</th>\n",
|
|
" <th>A8_dur</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>1170</td>\n",
|
|
" <td>2023-12-06 00:00:38</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>1170</td>\n",
|
|
" <td>2023-12-06 00:01:28</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>1170</td>\n",
|
|
" <td>2023-12-06 00:02:18</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>1170</td>\n",
|
|
" <td>2023-12-06 00:03:08</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>50</td>\n",
|
|
" <td>38</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>30</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5664</th>\n",
|
|
" <td>8202</td>\n",
|
|
" <td>2023-12-06 10:17:52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>43</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>47</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5665</th>\n",
|
|
" <td>8202</td>\n",
|
|
" <td>2023-12-06 10:19:02</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>42</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>47</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5666</th>\n",
|
|
" <td>8202</td>\n",
|
|
" <td>2023-12-06 10:20:12</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>43</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>47</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>5667</th>\n",
|
|
" <td>8202</td>\n",
|
|
" <td>2023-12-06 10:21:22</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>42</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>47</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>5668 rows × 14 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" inter_no date_time 제어모드 제어상태 cycle offset A1_dur A2_dur \\\n",
|
|
"0 1170 2023-12-06 00:00:38 3 1 50 38 20 30 \n",
|
|
"1 1170 2023-12-06 00:01:28 3 1 50 38 20 30 \n",
|
|
"2 1170 2023-12-06 00:02:18 3 1 50 38 20 30 \n",
|
|
"3 1170 2023-12-06 00:03:08 3 1 50 38 20 30 \n",
|
|
"... ... ... ... ... ... ... ... ... \n",
|
|
"5664 8202 2023-12-06 10:17:52 0 3 70 43 23 47 \n",
|
|
"5665 8202 2023-12-06 10:19:02 0 3 70 42 23 47 \n",
|
|
"5666 8202 2023-12-06 10:20:12 0 3 70 43 23 47 \n",
|
|
"5667 8202 2023-12-06 10:21:22 0 3 70 42 23 47 \n",
|
|
"\n",
|
|
" A3_dur A4_dur A5_dur A6_dur A7_dur A8_dur \n",
|
|
"0 0 0 0 0 0 0 \n",
|
|
"1 0 0 0 0 0 0 \n",
|
|
"2 0 0 0 0 0 0 \n",
|
|
"3 0 0 0 0 0 0 \n",
|
|
"... ... ... ... ... ... ... \n",
|
|
"5664 0 0 0 0 0 0 \n",
|
|
"5665 0 0 0 0 0 0 \n",
|
|
"5666 0 0 0 0 0 0 \n",
|
|
"5667 0 0 0 0 0 0 \n",
|
|
"\n",
|
|
"[5668 rows x 14 columns]"
|
|
]
|
|
},
|
|
"execution_count": 18,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"# frequent_IDs에 속하는 교차로들만의 신호이력\n",
|
|
"from datetime import datetime\n",
|
|
"history = pd.read_csv(\"../SOITDSPOTINTSOPERHSTR_top10.csv\")\n",
|
|
"history['date_time'] = history['CLCT_UNIX_TM'].apply(datetime.fromtimestamp)\n",
|
|
"print(history['date_time'].min())\n",
|
|
"print(history['date_time'].max())\n",
|
|
"history = history[['SPOT_INTS_ID', 'date_time', 'CTRL_SE_CD', 'CTRL_STTS_CD', 'CYCL_HR', 'OFST_HR'] + [f\"A_RING_{i}_PHAS_HR\" for i in range(1,9)]]\n",
|
|
"history.columns = ['inter_no', 'date_time', '제어모드', '제어상태', 'cycle', 'offset'] + [f\"A{i}_dur\" for i in range(1,9)]\n",
|
|
"history"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 19,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([1170, 3138, 3139, 3244, 3245, 8020, 8031, 8123, 8124, 8202],\n",
|
|
" dtype=int64)"
|
|
]
|
|
},
|
|
"execution_count": 19,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"history.inter_no.unique()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 20,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"history1170 = history[history.inter_no == 1170]\n",
|
|
"history3138 = history[history.inter_no == 3138]\n",
|
|
"history3139 = history[history.inter_no == 3139]\n",
|
|
"history3244 = history[history.inter_no == 3244]\n",
|
|
"history3245 = history[history.inter_no == 3245]\n",
|
|
"history8020 = history[history.inter_no == 8020]\n",
|
|
"history8031 = history[history.inter_no == 8031]\n",
|
|
"history8123 = history[history.inter_no == 8123]\n",
|
|
"history8124 = history[history.inter_no == 8124]\n",
|
|
"history8202 = history[history.inter_no == 8202]"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 24,
|
|
"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>inter_no</th>\n",
|
|
" <th>date_time</th>\n",
|
|
" <th>제어모드</th>\n",
|
|
" <th>제어상태</th>\n",
|
|
" <th>cycle</th>\n",
|
|
" <th>offset</th>\n",
|
|
" <th>A1_dur</th>\n",
|
|
" <th>A2_dur</th>\n",
|
|
" <th>A3_dur</th>\n",
|
|
" <th>A4_dur</th>\n",
|
|
" <th>A5_dur</th>\n",
|
|
" <th>A6_dur</th>\n",
|
|
" <th>A7_dur</th>\n",
|
|
" <th>A8_dur</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>1295</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 00:00:53</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>54</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1296</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 00:02:13</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>80</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>54</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1297</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 00:03:18</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1298</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 00:04:23</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>65</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>39</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1832</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 10:18:23</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1833</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 10:19:33</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1834</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 10:20:43</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1835</th>\n",
|
|
" <td>3139</td>\n",
|
|
" <td>2023-12-06 10:21:53</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>44</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>541 rows × 14 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" inter_no date_time 제어모드 제어상태 cycle offset A1_dur A2_dur \\\n",
|
|
"1295 3139 2023-12-06 00:00:53 3 1 65 54 26 39 \n",
|
|
"1296 3139 2023-12-06 00:02:13 3 2 80 4 26 54 \n",
|
|
"1297 3139 2023-12-06 00:03:18 3 1 65 4 26 39 \n",
|
|
"1298 3139 2023-12-06 00:04:23 3 1 65 4 26 39 \n",
|
|
"... ... ... ... ... ... ... ... ... \n",
|
|
"1832 3139 2023-12-06 10:18:23 3 1 70 4 26 44 \n",
|
|
"1833 3139 2023-12-06 10:19:33 3 1 70 4 26 44 \n",
|
|
"1834 3139 2023-12-06 10:20:43 3 1 70 4 26 44 \n",
|
|
"1835 3139 2023-12-06 10:21:53 3 1 70 4 26 44 \n",
|
|
"\n",
|
|
" A3_dur A4_dur A5_dur A6_dur A7_dur A8_dur \n",
|
|
"1295 0 0 0 0 0 0 \n",
|
|
"1296 0 0 0 0 0 0 \n",
|
|
"1297 0 0 0 0 0 0 \n",
|
|
"1298 0 0 0 0 0 0 \n",
|
|
"... ... ... ... ... ... ... \n",
|
|
"1832 0 0 0 0 0 0 \n",
|
|
"1833 0 0 0 0 0 0 \n",
|
|
"1834 0 0 0 0 0 0 \n",
|
|
"1835 0 0 0 0 0 0 \n",
|
|
"\n",
|
|
"[541 rows x 14 columns]"
|
|
]
|
|
},
|
|
"execution_count": 24,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"history3139"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 21,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"image/png": "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eCvgtlavXj1g4UVE39e918b6wx/+EPfdd1+MGTMmbrvttnjllVfib//2b+PVV1+N6667ruJ2J0+eHFdffXUceeSR0d3dHddcc00cd9xx8eCDD8bhhx9e2cBhEHlYE5W0C5XKw5rob+XKlfGLX/wibr755tIHCWXIw5o45phj4qabboqPf/zjsWnTpnjzzTdj3rx5ceWVV1Y2aBhCHtbFnDlz4pprrolTTjklDj/88HjooYfimmuuic2bN8crr7wSkydPrmzwUES910QpVq9eHfvss8+gfe++++4Vt032vJKriM2bN8epp54aSZLEokWL+r4/d+7c2G233WK33XYr66K9W7dujUKhEDfddFPMnDkzTjzxxLjiiivihhtuqKrKPH369Pjc5z4XRxxxRBx99NFx7bXXxtFHHx3f+ta3Km4TisnLmsiqXdhWXtZEfzfccEOMHz8+TjnllFTag/7ysiaefPLJ+MIXvhAXX3xxPPTQQ7F48eJ47rnn4pxzzqm4TRhMXtbF17/+9Zg7d268973vjZ133jk+/OEPx+mnnx4REaNG+XWR9ORlTZBvXsm1jd6F9/zzz8cvf/nLAdXla665pm+x7LzzzhER0d7eHsuWLRvQxpo1a/rui+h5xdVee+0Vra2tfccccMABkSRJvPjii7HffvttF0cp7RYzc+bMuO+++0oeLwwlT2uiknahXHlaE72SJIlrr702Pv3pTw946T2kIU9rYuHChXHMMcfEV77ylYiIOPTQQ2PXXXeN97///fGNb3zDK1ZITZ7WRXNzc1x77bXxve99L9asWROTJ0+O73//+zFu3LiYOHFiVXmAXo2yJkrR3t7e19dgfdO4lOb76V14Tz/9dNx1112xxx57DLh/r732in333Tf23XffvuuZzJo1Kx5//PF46aWX+o678847o6WlJQ488MCI6Hlp/MqVK2P9+vV9x/z+97+PUaNGxdSpU4vGUkq7xTz66KOeoJGavK2JStqFcuRtTfRasmRJPPPMM3HWWWdVlwDYRt7WxMaNG7d7Zcro0aMjoqcYDGnI27rotfPOO8fUqVNj9OjRccstt8Rf/MVfeCUXqWikNVGKWbNmxb333jvgmnR33nlnTJ8+3VsV86D217qvj3Xr1iWPPPJI8sgjjyQRkVxxxRXJI4880veJDm+88UZy8sknJ1OnTk0effTRZNWqVX23wT6lKkmS5M0330wOPvjg5Pjjj08effTRZPHixcnEiROTBQsWDOh76tSpycc+9rHkt7/9bbJkyZJkv/32S/7mb/6mqna/9a1vJbfffnvy9NNPJ48//njyhS98IRk1alRy1113pZAxhrvhuCYqaRd6Dcc10etTn/pUctRRR1WRHUai4bgmrrvuumSnnXZKrrrqquTZZ59N7rvvvuTII49MZs6cmULGGAmG47p46qmnkn//939Pfv/73ycPPvhg8vGPfzyZMGFCsnz58uoTxrCXtzWRJEny9NNPJ4888kjyuc99Lnn3u9/dF39vPGvXrk3a2tqST3/608kTTzyR3HLLLcnYsWOT733veylkjKyNmCLXPffck0TEdrfTTz89SZIkWb58edH7IyK55557dtj2c889l8ydOzdpbm5O9txzz+TCCy9MNm/ePOCY//3f/01mz56dNDc3J1OnTk3mz5+fbNy4sap2L7vssuRd73pXMmbMmGTChAnJcccdl/zyl7+sKD+MPMNxTVTaLiTJ8F0Ta9euTZqbm5Pvf//7ZeeEkW24ronvfve7yYEHHpg0NzcnkydPTj75yU8mL774Ytn5YWQajuviySefTA477LCkubk5aWlpST784Q8nv/vd7yrKDyNPHtfEn/3ZnxWNp39h93/+53+S973vfUlTU1Oy1157JZdeemkl6aEOCknitdkAAAAA5Js3WQMAAACQe4pcAAAAAOSeIhcAAAAAuafIBQAAAEDuKXIBAAAAkHuKXAAAAADkniIXAAAAALmnyAUAAABA7ilyAQAAAJB7ilwAAAAA5J4iFwAAAAC59/8DLDqZcPS6k4kAAAAASUVORK5CYII=",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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+9nP4owzzogbbrghjj/++HjzzTfjvPPOi3POOSe+//3v9+JsMVgMxHFx6623xrx58+KOO+6Iww47LJYtWxbnnHNO7LnnnnH88cf34mwxWKRtXLQ566yzYunSpfGLX/xip235fD6OPvroqK+vj9tuuy1efvnlOOuss2LMmDFx7rnndvPM0O+SQSYikocffni3+y1btiyJiOT111/vcp8f/OAHSUVFRdLQ0NC+7tZbb02y2WzS3NycJEmSPP7440kul0v+8Ic/dLvG7rT74x//OImI5J133ul2u9CVgTIuetIudGWgjIsdPfzww0kmk0l+97vfdbsfSJKBMyauv/765C//8i87vO+mm25K9tlnn273A20Gyrioq6tLLr300g7vmzt3bnLkkUd2ux9ok4Zxsb0rr7wymT59+k7rb7nllmTPPffscE112WWXJVOnTu1RP/SPQfG4Yk80NTVFJpOJMWPGdLnPkiVL4kMf+lBUV1e3r5szZ07k8/n45S9/GRERjz76aBx66KFx3XXXxT777BMf+MAH4tJLL40//elPvWq3zSGHHBK1tbXxyU9+Mn72s5/18Gihe8p9XPSkXeitch8XO7rrrruivr4+Jk+eXOCRQveU+5ioq6uL1atXxw9+8INIkiQaGxvjv/7rv+JTn/pUL48culbu46K5uTlGjBjR4X1VVVWxbNmy2LJlS08OGXarlOOiO5YsWRIf+9jHYvjw4R36XrlyZbzzzju9apu+MygeVyzU5s2b47LLLovPf/7zHR4F3FFDQ0OHwRYR7cttc2P99re/jaeffjpGjBgRDz/8cLz99tvxd3/3d/GHP/wh7rnnnh63W1tbG7fddlsceuih0dzcHHfeeWccddRRsXTp0pgxY0bPDhx2IQ3joiftQm+kYVxsb82aNfH444/HAw880P2DhAKkYUwceeSRcf/998dnP/vZ2Lx5c7z//vtx/PHHx80339yzg4bdSMO4mDNnTtx5551x0kknxYwZM2L58uVx5513xpYtW+Ltt9+O2tranh08dKHU46I7GhoaYsqUKV32veeee/a4bfqOO7l2sGXLljjttNMiSZK49dZb29cfe+yxMWrUqBg1alRBk/W2tLREJpOJ+++/P2bNmhWf+tSnYsGCBXHvvff2KlmeOnVqfOUrX4mZM2fG7Nmz4+67747Zs2fHDTfc0OM2oStpGRd91S50Ji3jYnv33ntvjBkzJk466aSitAfbS8uYWLFiRVx44YXxrW99K5YvXx4LFy6M3/3ud3Heeef1uE3oSlrGxRVXXBHHHntsHHHEETFs2LA48cQT48wzz4yIiIoK/8tIcaVlXJBO7uTaTttge/311+NHP/pRh0T5zjvvbB8gw4YNi4iImpqaWLZsWYc2Ghsb27dFtN5xtc8++0Qul2vf58ADD4wkSeL3v/997L///jvV0Z12OzNr1qx4+umnu3280B1pGhc9aRd6Ik3jok2SJHH33XfHF7/4xQ633UMxpGlMzJ8/P4488sj4xje+ERERBx98cOyxxx7x0Y9+NL797W+7Y4WiSdO4qKqqirvvvju++93vRmNjY9TW1sbtt98eo0ePjr333rtX5wG2Vy7jojtqamra++qqb8qPWH6btsH22muvxQ9/+MMYN25ch+377LNP7LfffrHffvu1z2NSV1cXL7/8cqxbt659vyeffDKy2WxMmzYtIlpviV+zZk1s3LixfZ9f/epXUVFRERMnTuy0lu6025mXXnrJhRlFlbZx0ZN2oVBpGxdtFi9eHL/+9a/j7LPP7t0JgB2kbUy8++67O92ZMmTIkIhoDYOhGNI2LtoMGzYsJk6cGEOGDIkHH3wwPv3pT7uTi6Ipp3HRHXV1dfHUU091mJfuySefjKlTp3pUsZz1/1z3/W/Dhg3Jiy++mLz44otJRCQLFixIXnzxxfZvcXjvvfeSE044IZk4cWLy0ksvJWvXrm1/dfXtVEmSJO+//35y0EEHJUcffXTy0ksvJQsXLkz23nvvZN68eR36njhxYnLqqacmv/zlL5PFixcn+++/f/K3f/u3vWr3hhtuSB555JHktddeS15++eXkwgsvTCoqKpIf/vCHRThjDAYDcVz0pF3Y3kAcF22+8IUvJIcffngvzg6D0UAcE/fcc08ydOjQ5JZbbkl+85vfJE8//XRy6KGHJrNmzSrCGWMwGIjjYuXKlcm//du/Jb/61a+SpUuXJp/97GeTsWPHJqtWrer9CWNQSNu4SJIkee2115IXX3wx+cpXvpJ84AMfaK+/rZ7169cn1dXVyRe/+MXklVdeSR588MFk5MiRyXe/+90inDH6yqAIuX784x8nEbHT68wzz0ySJElWrVrV6faISH784x/vsu3f/e53ybHHHptUVVUle+21V3LJJZckW7Zs6bDP//7v/yb19fVJVVVVMnHixGTu3LnJu+++26t2r7322uSv/uqvkhEjRiRjx45NjjrqqORHP/pRj84Pg9NAHBc9bRfaDNRxsX79+qSqqiq5/fbbCz4nDG4DdUzcdNNNybRp05KqqqqktrY2Of3005Pf//73BZ8fBqeBOC5WrFiRHHLIIUlVVVWSzWaTE088MXn11Vd7dH4YnNI4Lv76r/+603q2D3d//vOfJx/5yEeSysrKZJ999kmuueaanpwe+lEmSdyXDQAAAEC6ecAaAAAAgNQTcgEAAACQekIuAAAAAFJPyAUAAABA6gm5AAAAAEg9IRcAAAAAqSfkAgAAACD1hFwAAAAApJ6QCwAAAIDUE3IBAAAAkHpCLgAAAABS7/8Hg1jQcWaNS7kAAAAASUVORK5CYII=",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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9NJL8YlPfCLmz58fP/vZz3rsd/v27XHSSSdFY2NjPPzww7F+/fo466yzYtiwYfH5z3++s90ZZ5wRra2tccstt8TBBx8c69evj46Ojj73GxGxZs2ayGazncsTJ04s5dQwSNXqmCi1X9ipFsfEF77whbjiiis693nllVdi5syZ8e53v7s3p4hBphbHxE9+8pM466yz4tprr42TTz45/vSnP8VHPvKROP/88+Nb3/pWH84Wg0Etjokbb7wxFi9eHF/+8pfjzW9+czz66KNx/vnnx/777x8nn3xyH84Wg0HaxsRO5557bqxcuTJ++ctf7rEtn8/HO9/5zmhubo6bbropnnjiiTj33HNj7Nix8aEPfajIM0NFJINYRCR33333Pts9+uijSUQkzzzzTI9tvvvd7yZ1dXVJS0tL57obb7wxyWazSXt7e5IkSXL//fcnuVwuefHFF4uusZh+H3zwwSQikpdeeqnofqE7tTImetMvdKdWxsTu7r777iSTySR/+MMfij4OJEntjImrr746+au/+qsu+11//fXJgQceWPRxIElqZ0w0NTUln/rUp7rst2jRouTYY48t+jiQJOkYE7u69NJLk5kzZ+6x/oYbbkj233//LtdSF198cXLooYf26jgMnEH3uGJvtLW1RSaTibFjx/bYZsWKFfGGN7whGhoaOtfNmzcv8vl8/OpXv4qIiHvvvTeOOuqouOqqq+LAAw+M173udfGpT30q/vKXv/Sp352OPPLImDRpUrzjHe+In/zkJ738trBv1T4metMv9EW1j4nd3XLLLdHc3BzTpk0r8ZtCcap9TDQ1NcXatWvju9/9biRJEq2trfHNb34z3vWud/Xxm0P3qn1MtLe3x4gRI7rsN3LkyHj00Udj27ZtvfnKsFeVHBPFWLFiRbz1rW+N4cOHdzn2mjVr4qWXXupT3/SvQfe4Yqm2bNkSF198cbzvfe/r8ijg7lpaWroMvojoXN45N9bvf//7+PGPfxwjRoyIu+++O1544YX4+7//+3jxxRfjtttu63W/kyZNiptuuimOOuqoaG9vj6985Stx/PHHx8qVK2PWrFm9++LQgzSMid70C72VhjGxq3Xr1sX9998fd955Z/FfEkqQhjFx7LHHxh133BHvec97YsuWLfHKK6/EySefHF/84hd796VhL9IwJubNmxdf+cpX4tRTT41Zs2bFqlWr4itf+Ups27YtXnjhhZg0aVLvvjx0o9JjohgtLS0xffr0Ho+9//7797pv+pc7ufZi27ZtccYZZ0SSJHHjjTd2rj/xxBNj9OjRMXr06JIm7e3o6IhMJhN33HFHzJkzJ971rnfFNddcE1/96lf7lDQfeuih8eEPfzhmz54dc+fOjVtvvTXmzp0b1157ba/7hO6kZUz0V7+wu7SMiV199atfjbFjx8app55alv5gV2kZE6tXr45PfOIT8bnPfS5WrVoVS5cujT/84Q/xkY98pNd9QnfSMiY++9nPxoknnhjHHHNMDBs2LE455ZQ4++yzIyKirs7/MlI+aRkTpJc7uXqwc/A988wz8YMf/KBLwvyVr3ylc8AMGzYsIiIaGxvj0Ucf7dJHa2tr57aIwh1XBx54YORyuc42hx9+eCRJEn/84x/jkEMO2aOOYvrtzpw5c+LHP/5x0d8X9iVNY6I3/UKp0jQmdkqSJG699db4wAc+0OX2eyiHNI2JJUuWxLHHHhuf/vSnIyLijW98Y+y3335x3HHHxeWXX+6uFcoiTWNi5MiRceutt8aXvvSlaG1tjUmTJsXNN98cY8aMiQkTJvTpPMBO1TImitHY2Nh5rJ6OTXUSy3dj5+B76qmn4oEHHojx48d32X7ggQfGwQcfHAcffHDnfCZNTU3xxBNPxHPPPdfZ7vvf/35ks9mYMWNGRBRujV+3bl1s2rSps81vfvObqKuriylTpnRbSzH9dufxxx93gUbZpG1M9KZfKEXaxsROy5cvj9/+9rdx3nnn9e0EwG7SNiZefvnlPe5OGTJkSEQUwmDoq7SNiZ2GDRsWU6ZMiSFDhsRdd90Vf/u3f+tOLsqimsZEMZqamuKhhx7qMifd97///Tj00EM9qljtBn6u+8rauHFj8vOf/zz5+c9/nkREcs011yQ///nPO9/qsHXr1mT+/PnJlClTkscffzxZv35956ent1QlSZK88soryRFHHJG8853vTB5//PFk6dKlyYQJE5LFixd3OfaUKVOS008/PfnVr36VLF++PDnkkEOSv/u7v+tTv9dee21yzz33JE899VTyxBNPJJ/4xCeSurq65IEHHijDGaPW1eKY6E2/sFMtjomd3v/+9ydHH310H84Og1EtjonbbrstGTp0aHLDDTckv/vd75If//jHyVFHHZXMmTOnDGeMWleLY2LNmjXJv//7vye/+c1vkpUrVybvec97knHjxiVPP/10308YNS9tYyJJkuSpp55Kfv7znycf/vCHk9e97nWd9e+sZ8OGDUlDQ0PygQ98IHnyySeTu+66Kxk1alTypS99qQxnjP406EKuBx98MImIPT5nn312kiRJ8vTTT3e7PSKSBx98cK99/+EPf0hOPPHEZOTIkckBBxyQfPKTn0y2bdvWpc3//u//Js3NzcnIkSOTKVOmJIsWLUpefvnlPvV75ZVXJq997WuTESNGJOPGjUuOP/745Ac/+EGvzg+DTy2Oid72C0lSu2Niw4YNyciRI5Obb7655HPC4FarY+L6669PZsyYkYwcOTKZNGlScuaZZyZ//OMfSz4/DD61OCZWr16dHHnkkcnIkSOTbDabnHLKKcmvf/3rXp0fBp80jom//uu/7raeXYPdX/ziF8lb3vKWpL6+PjnwwAOTK664ojenhwGWSRL3ZAMAAACQbh6wBgAAACD1hFwAAAAApJ6QCwAAAIDUE3IBAAAAkHpCLgAAAABST8gFAAAAQOoJuQAAAABIPSEXAAAAAKkn5AIAAAAg9YRcAAAAAKSekAsAAACA1Pv/AaboTjJe7i8gAAAAAElFTkSuQmCC",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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ABiJYAwAAAAAAABGIhgLMTExMVqxYoViYmKCXQoQMpgXgDfmBOCNOQF4Y04A3pgT6ExELL4PAAAAAAAABIo7xgAAAAAAAGAkgjEAAAAAAAAYiWAMAAAAAAAARiIYAwAAAAAAgJEIxgAAAAAAAGAkgrFOvP3225o1a5ZSUlJks9m0YcMGr+MnT57U4sWLddlll2nQoEFKSUnRggULVF1d3WXfn376qa655hrFxcUpMTFRP//5z3Xq1CmvNk1NTfqXf/kXpaenKyYmRt/4xjf0zDPP9KjfsrIy2Wy2dp+amhr/LwyMFYlzorv9Am0icV7k5+f7/L8Vl1xyif8XBsaKxDkhSS+88ILGjh2ruLg4JScn6+abb9bRo0f9uygwWqTOid/+9re6+OKLFRsbq8zMTD3//PP+XRAYLxznxE9+8hONGzdOMTExuvzyy322+eCDD3TllVdq4MCBSktL08MPP9xlvQgN/YJdQChraGjQ2LFjdfPNN+vaa69td7yxsVGVlZVavny5xo4dqy+++EI//elPNXv2bL333nsd9tvc3KxrrrlGSUlJeuedd3To0CEtWLBA/fv317/927952l1//fWqra3V008/rREjRujQoUNqaWnpcb+StHv3btntds92YmJiIJcGhorUORFov8CZInFePPbYYyoqKvKcc+rUKY0dO1b//M//3J1LBMNE4pz4y1/+ogULFujRRx/VrFmz9Pe//1233XabfvzjH+vll1/uwdWCCSJxThQXF2vp0qV68sknNX78eG3dulU//vGPdd5552nWrFk9uFowQbjNiTY333yzKioq9MEHH7Q75na7NX36dOXm5mrNmjXauXOnbr75Zg0dOlS33HKLn1cGQWPBL5KskpKSLttt3brVkmQdOHCgwzZ/+tOfrKioKKumpsazr7i42LLb7VZTU5NlWZb12muvWQ6Hwzp69KjfNfrT71tvvWVJsr744gu/+wV8iZQ50Z1+gY5Eyrw4W0lJiWWz2az9+/f7/T2AZUXOnHjkkUesCy+80Ou8xx9/3Bo+fLjf3wNYVuTMiZycHOvee+/1Oq+goMCaPHmy398DWFZ4zIkzrVixwho7dmy7/atXr7bOO+88r9+lFi9ebGVmZnbre9C3eJSyl7lcLtlsNg0dOrTDNlu2bNFll10mp9Pp2Tdjxgy53W59+OGHkqSNGzfqm9/8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",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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ekIuAAAAAEpvTKUbAACG1949e7Jx7co899TjaZg0M8cveHseWb+qd3vuorYkOewx1VS3mnpRt/p6Ubf6elG3+nopW91q6mXuorbUjfGv2lAJNUVRFIM9+YorrsjSpUtz2WWX5ZprrkmS7Nq1K5/85Cdz2223pbu7O21tbbnuuuvS3Nzcr5pdXV1pampKZ2dnGhsbB9saAJDkvpU3Z8aa5WnO9t59e4ua1NX89s//UxmfmiQT8/RhjammutXUi7rV14u61deLutXXS9nqVlMvHZmSLa3L8oa2iwIMjf5mRYMOuX7yk5/k/PPPT2NjY9761rf2hlwf+chH8n//7//N1772tTQ1NeWjH/1oamtr8+Mf/3hIGwcAXt59K2/O/Ls/liSprfnt/qJIal6ynRy4bzBjqqluNfWibvX1om719aJu9fVStrrV0kvPC2PuP/VaQRcMkf5mRYNak+vpp5/OBRdckK985SuZNGlS7/7Ozs589atfzVVXXZW3ve1tWbBgQW666abcfffdueeeewZzKQBgEPbu2ZMZa5Yn6RtwJX1vxPdvH2zfYMZUU91q6kXd6utF3errRd3q66Vsdaull/1/d6evWZ69e/YEOHIGFXJdcsklOeuss7J48eI++9evX5/du3f32T937twce+yxWbNmzUFrdXd3p6urq88LADg8G9euTHO2HxBwAQDDr7Ymacn2bFy7stKtwKgy4NXwbrvtttx77735yU9+csCx9vb2HHXUUZk4cWKf/c3NzWlvbz9ovcsvvzzLly8faBsAwMt47qnHK90CAIx6/h7DkTWgJ7k2b96cyy67LN/4xjcybty4IWlg6dKl6ezs7H1t3rx5SOoCwGjWMGlmpVsAgFHP32M4sgYUcq1fvz7btm3LySefnDFjxmTMmDFZvXp1rr322owZMybNzc15/vnns2PHjj7ndXR0pKWl5aA16+vr09jY2OcFAByeuYva0pEpvYvfAgBHTk+RtGdK5i5qq3QrMKoMKOR6+9vfngceeCAbNmzofb3xjW/MBRdc0Pu/x44dm1WrVvWe8/DDD+exxx5La2vrkDcPABxc3Zgx2dK6LEkOCLpe+rvKRXHwfYMZU011q6kXdauvF3Wrrxd1q6+XstWtll72/93d2rosdWMGvEIQcBgGNOMmTJiQE088sc++Y445JlOmTOndf/HFF2fJkiWZ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n/3sZ0mST3ziE7njjjvyrW99K6tXr86WLVvynve8Z1gar2YL50zO9KZxqal0IzAC1GTfrywunDO50q0AAABQxWqKojis1ZwnT56cz3/+83nve9+bqVOn5tZbb8173/veJMnGjRtzwgknZM2aNTnllFP6Va+rqytNTU3p7OxMY2Pj4bRWUft/XTGJBehhkPYHxdf/0ck548TpFe0FAACAyuhvVjToNbn27t2b2267Lc8880xaW1uzfv367N69O4sXL+4dM3fu3Bx77LFZs2bNIet0d3enq6urz2skOOPE6bn+j05OS9Ohv2JV289HvYZ6XFlrV0MPZa1dDT0M5pyWpnECLgAAAPplzEBPeOCBB9La2ppdu3Zl/Pjxuf322zNv3rxs2LAhRx11VCZOnNhnfHNzc9rb2w9Z7/LLL8/y5csH3HgZnHHi9Lxj7tRsXLsyzz31eOqbWpIk3Z3taZg0M8cveHseWb/qgGPDOa6stauhh7LWroYe+n3OxBnpmvamPPHsnkybsO8rinWDSdEAAAAYdQb8dcXnn38+jz32WDo7O/Mv//IvueGGG7J69eps2LAhH/zgB9Pd3d1n/MKFC/PWt741V1555UHrdXd39zmnq6srs2fPLv3XFZMkD/17suLTSdeWgx+vqU2KnleuM9Tjylq7Gnooa+1q6KG/5zTOSM64Mpl3zsBqAgAAMCL19+uKA36S66ijjsqrX/3qJMmCBQvyk5/8JF/4whfyvve9L88//3x27NjR52mujo6OtLS0HLJefX196uvrB9pG9Xvo35NvXpiXXZGrv8HAUI8ra+1q6KGstauhh/6e07V139w5/xZBFwAAAP026DW59uvp6Ul3d3cWLFiQsWPHZtWqVb3HHn744Tz22GNpbW093MuUS8/efU9wWXIeBuGFebPir/bNJQAAAOiHAT3JtXTp0px55pk59thjs3Pnztx666350Y9+lJUrV6apqSkXX3xxlixZksmTJ6exsTGXXnppWltb+/3LiiPGo3cf+iuKQD8USdfj++bSnNMr3QwAAAAlMKCQa9u2bbnwwguzdevWNDU15fWvf31WrlyZd7zjHUmSq6++OrW1tTnvvPPS3d2dtra2XHfddcPSeFV7uqPSHcDIsHNrpTsAAACgJAa88Pxw6+9iYlVt0/+X3PyHle4Cyu/oVyV/eLW1uQAAAEax/mZF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",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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CbkAAAAAKL26kW4AADi89u7Zkw1rVmbn9ifSMHlWTpj/tjy6blXv8tyFbUky5DHVVLeaelG3+npRt/p6Ubf6eilb3WrqZe7CttTW+as2jIRKURTFYHe+7LLLsnTp0lx88cW58sorkyS7du3KJZdckltvvTXd3d1pa2vL1Vdfnebm5n7V7OrqSlNTUzo7O9PY2DjY1gCAJOtX3pSZq5enOdt61+0tKqmtvPj1vz0TUkkyKc8MaUw11a2mXtStvl7Urb5e1K2+XspWt5p66cjUbG5dllPbFgcYHv3NigYdcv3Xf/1X3v/+96exsTG/9Vu/1RtyffSjH81//Md/5Gtf+1qamprysY99LDU1NfnhD384rI0DAC9v/cqbMu+eTyRJaiovri+KpLLfcnLgusGMqaa61dSLutXXi7rV14u61ddL2epWSy89vxxz/xlXCbpgmPQ3KxrUM7meeeaZnH/++fnqV7+ayZMn967v7OzM9ddfn8svvzxvfetbM3/+/Nx4442555578qMf/WgwhwIABmHvnj2ZuXp5kr4BV9L3RHzf8sHWDWZMNdWtpl7Urb5e1K2+XtStvl7KVrdaetn3vTtj9fLs3bMnwJEzqJDroosuytlnn51Fixb1Wb9u3brs3r27z/q5c+fmmGOOyerVqw9aq7u7O11dXX1eAMDQbFizMs3ZdkDABQAcfjWVpCXbsmHNypFuBcaUAT8N79Zbb829996b//qv/zpgW3t7e4466qhMmjSpz/rm5ua0t7cftN6KFSuyfPnygbYBALyMndufGOkWAGDM830MR9aAruTatGlTLr744nz961/P+PHjh6WBpUuXprOzs/e1adOmYakLAGNZw+RZI90CAIx5vo/hyBpQyLVu3bps3bo1p512Wurq6lJXV5c777wzV111Verq6tLc3Jznn38+Tz/9dJ/9Ojo60tLSctCa9fX1aWxs7PMCAIZm7sK2dGRq78NvAYAjp6dI2jM1cxe2jXQrMKYMKOR629velgceeCD33Xdf7+sNb3hDzj///N7/HjduXFatWtW7zyOPPJLHH388ra2tw948AHBwtXV12dy6LEkOCLr2/13lojj4usGMqaa61dSLutXXi7rV14u61ddL2epWSy/7vne3tC5Lbd2AnxAEDMGAZtzEiRPz2te+ts+6V73qVZk6dWrv+gsvvDBLlizJlClT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+I0cddRRfY79yCOPZPv27UOqzeExpm5XHKhdu3bl0ksvzQc/+ME+twLur729vc+ES9K7vO/ZWP/3f/+Xu+++O+PHj89tt92WJ598Mn/6p3+abdu25cYbbxx03RkzZuTaa6/NG97whnR3d+e6667LW97ylqxZsyannXba4N44vIwyzIvB1IXBKsOceKnNmzfnP//zP3PLLbf0/03CAJVhXpx55pn5+te/nt/93d/Nrl27smfPnpxzzjn50pe+NLg3DS+jDHOira0t1113Xd7znvfktNNOy7p163Lddddl9+7defLJJzNjxozBvXk4hJGeF/3R3t6e44477pDHnjx58qBrc3i4kusQdu/enfe///0piiLXXHNN7/qzzjorEyZMyIQJEwb0wN6enp5UKpV8/etfz4IFC/Kud70rl19+eW666aYhpcsnnnhi/uRP/iTz58/PGWeckRtuuCFnnHFGrrjiikHXhEMpy7w4XHVhf2WZEy910003ZdKkSXnPe94zLPVgf2WZFw8//HAuvvjifOYzn8m6detyxx135Gc/+1k+8pGPDLomHExZ5sSnP/3pnHXWWTn99NMzbty4vPvd787ixYuTJDU1/trI8CrLvKB8XMl1EPsm3GOPPZbvfe97fVLl6667rneSjBs3LknS0tKStWvX9qnR0dHRuy154YqrWbNmpampqXfMSSedlKIo8vOf/zwnnHDCAX30p+7BLFiwIHfffXe/3y/0R5nmxWDqwkCVaU7sUxRFbrjhhvz+7/9+n8vuYbiUaV6sWLEiZ555Zv78z/88SfK6170ur3rVq/LmN785n/3sZ121wrAo05xoaGjIDTfckC9/+cvp6OjIjBkz8pWvfCUTJ07MtGnThvQ5wEtVy7zoj5aWlt5jHerYVBeR/H72TbhHH3003/3udzN16tQ+22fNmpXjjz8+xx9/fO+zTFpbW/PAAw9k69atveO+853vpLGxMSeffHKSFy6J37x5c5555pneMT/5yU9SU1OT2bNnH7SX/tQ9mPvuu8+JGcOqbPNiMHVhIMo2J/a5884789Of/jQXXnjh0D4AOIiyzYvnnnvugKtTamtrk7wQCMNQlW1O7DNu3LjMnj07tbW1ufXWW/Pbv/3bruRi2FTTvOiP1tbW3HXXXX2eS/ed73wnJ554olsVq9WRf9b9yNmxY0exfv36Yv369UWS4vLLLy/Wr1/f+0sOzz//fHHuuecWs2fPLu67775iy5Ytva9D/UJVURTFnj17ite+9rXFO97xjuK+++4r7rjjjmLatGnF0qVL+xx79uzZxfve977ioYceKu68887ihBNOKP7oj/5oSHWvuOKK4lvf+lbx6KOPFg888EBx8cUXFzU1NcV3v/vdYfjEGAtG47wYTF3YZzTOiX1+7/d+r1i4cOEQPh3GqtE4L2688cairq6uuPrqq4v//d//Le6+++7iDW94Q7FgwYJh+MQY7UbjnHjkkUeKv//7vy9+8pOfFGvWrCl+93d/t5gyZUqxcePGoX9gjAllmxdFURSPPvposX79+uJP/uRPite85jW9/e/r5+mnny6am5uL3//93y8efPDB4tZbby2OPvro4stf/vIwfGIcDmMq5Pr+979fJDngtXjx4qIoimLjxo0H3Z6k+P73v/+ytX/2s58VZ511VtHQ0FC8+tWvLi655JJi9+7dfcb8z//8T7Fo0aKioaGhmD17drFkyZLiueeeG1Ldz33uc8Wv/dqvFePHjy+mTJlSvOUtbym+973vDerzYWwajfNisHWhKEbvnHj66aeLhoaG4itf+cqAPxMYrfPiqquuKk4++eSioaGhmDFjRnH++ecXP//5zwf8+TD2jMY58fDDDxevf/3ri4aGhqKxsbF497vfXWzYsGFQnw9jUxnnxW/+5m8etJ+Xhrv3339/8aY3vamor68vZs2aVVx22WWD+Xg4QipF4XpsAAAAAMrNzdUAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6/z+ehcwxZ5PJ0QAAAABJRU5ErkJggg==",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABLkAAAFfCAYAAACiHh71AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAxdUlEQVR4nO3df5BddZ0n/PftTug0kO6QmHTnF0xmREJAI0QTGsR1NNoiA1LCohYzZEZWRxaVMTrrpHY0k32sBaUKGHYFfwHCKsuM8yzuMqPkwaiwSkg0BIYfG0Q3QiTpDgTSHX6kSdLn+SN0kyYJdHc66Xu6X6+qW8U553s/53Nu5Zt78uaccytFURQBAAAAgBKrGe4GAAAAAOBACbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQemOGu4FX6+7uzsaNGzN+/PhUKpXhbgcAAACAYVQURbZt25Zp06alpmb/12tVXci1cePGzJw5c7jbAAAAAKCKbNiwITNmzNjv9qoLucaPH59kd+MNDQ3D3A0AAAAAw6mzszMzZ87szYz2p+pCrp5bFBsaGoRcAAAAACTJ6z7WyoPnAQAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpjhrsBAKD/du3cmXWrlufFZ59M/VHTM3tBa2rH+DoHAABnxQBQEmuX35RpK5flhGzpXdd+56RsbFmak1oXDWNnAAAw/IRcAFACa5fflLn3fGb3QuWV9ZOLLZl8z2eyNhF0AQAwqnkmFwBUuV07d2baymVJkppK3209y1NXLsuunTsPcWcAAFA9hFwAUOXWrVqepmzZK+DqUVNJmrMl61YtP7SNAQBAFRFyAUCVe/HZJ4d0HAAAjERCLgCocvVHTR/ScQAAMBIJuQCgys1e0Jr2TEp3se/t3UXSlkmZvaD10DYGAABVRMgFAFWudsyYbGxZmiR7BV09y5talqZ2jB9NBgBg9BJyAUAJnNS6KA+cek2eqkzqs35zZVIeOPWanNS6aJg6AwCA6lApimI/Nz8Mj87OzjQ2NqajoyMNDQ3D3Q4AVJVdO3dm3arlefHZJ1N/1PTMXtDqCi4AAEa0/mZFzooBoERqx4zJCaedOdxtAABA1XG7IgAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQegMKuf7u7/4ulUqlz2v27Nm927dv355LLrkkkyZNypFHHplzzz037e3tQ940AAAAAOxpwFdynXDCCdm0aVPv6+c//3nvts9+9rO5/fbb8/3vfz933XVXNm7cmA996END2jAAAAAAvNqYAb9hzJg0Nzfvtb6joyPXX399brnllrz73e9Oktx44405/vjjc++99+aUU0458G4BAAAAYB8GfCXXY489lmnTpuUP//APc8EFF+SJJ55IkqxZsyY7duzIwoULe8fOnj07Rx99dFauXLnfel1dXens7OzzAgAAAICBGFDItWDBgnznO9/JHXfckeuuuy7r16/P6aefnm3btqWtrS2HHXZYJkyY0Oc9TU1NaWtr22/Nyy67LI2Njb2vmTNnDupAAAAAABi9BnS74hlnnNH73295y1uyYMGCHHPMMfnHf/zH1NfXD6qBJUuWZPHixb3LnZ2dgi4AAAAABmTAtyvuacKECXnTm96U3/zmN2lubs5LL72UrVu39hnT3t6+z2d49airq0tDQ0OfFwAAAAAMxAGFXM8991x++9vfZurUqZk3b17Gjh2bFStW9G5/9NFH88QTT6SlpeWAGwUAAACA/RnQ7Yqf//znc9ZZZ+WYY47Jxo0bs3Tp0tTW1uajH/1oGhsbc9FFF2Xx4sWZOHFiGhoa8ulPfzotLS1+WREAAACAg2pAIdfvf//7fPSjH82WLVsyefLkvOMd78i9996byZMnJ0muuuqq1NTU5Nxzz01XV1daW1tz7bXXHpTGAQAAAKBHpSiKYrib2FNnZ2caGxvT0dHh+VwAAAAAo1x/s6IDeiYXAAAAAFQDIRcAAAAApSfkAgAAAKD0hFwAAAAAlN6Afl0RAAAAeH27uousXv9MNm/bninjx2X+rImprakMd1swogm5AAAAYAjd8dCmLLv9kWzq2N67bmrjuCw9a07ef+LUYewMRja3KwIAAMAQueOhTbn4u/f1CbiSpK1jey7+7n2546FNw9QZjHxCLgAAABgCu7qLLLv9kRT72Nazbtntj2RX975GAAdKyAUAAABDYPX6Z/a6gmtPRZJNHduzev0zh64pGEU8kwsAAACGwOZtrwRcNenO/Jp1mZKt2ZwJWd09O90vX2ey5zhg6Ai5AAAAYAhMGT8uSdJaszpLx96caZVXrtjaWEzMsh0XZnn3/N5xwNByuyIAAAAMgfmzJuYjR96f68Zeneb0vSWxOc/kurFX5yNH3p/5syYOU4cwsgm5AAAAYAjUpjtLx96cJKmp9N3Ws7x07M2pTfch7gxGByEXAAAADIXH70n9i217BVw9aipJ/YttyeP3HNq+YJQQcgEAAMBQeK59aMcBAyLkAgAAgKFwZNPQjgMGRMgFAAAAQ+GYU5OGaUn2c79iKknD9N3jgCEn5AIAAIChUFObvP8rLy+8Ouh6efn9l+8eBww5IRcAAAAMlTlnJ+ffnDRM7bu+Ydru9XPOHp6+YBQYM9wNAAAAwIgy5+xk9pm7f0Xxufbdz+A65lRXcMFBJuQCAACAoVZTm8w6vXdxV3eR1b/dks3btmfK+HGZP2tiamv29+wuYDCEXAAAAHAQ3fHQpiy7/ZFs6tjeu25q47gsPWtO3n/i1Nd4JzAQnskFAAAAB8kdD23Kxd+9r0/AlSRtHdtz8Xfvyx0PbRqmzmDkEXIBAADAQbCru8iy2x9JsY9tPeuW3f5IdnXvawQwUEIuAAAAOAhWr39mryu49lQk2dSxPavXP3PomoIRzDO5AAAA4CDYvO2VgKsm3Zlfsy5TsjWbMyGru2en++XrTvYcBwyekAsAAAAOginjxyVJWmtWZ+nYmzOt8soVWxuLiVm248Is757fOw44MG5XBAAAgINg/qyJ+ciR9+e6sVenOX1vSWzOM7lu7NX5yJH3Z/6sicPUIYwsQi4AAAA4CGrTnaVjb06S1FT6butZXjr25tSm+xB3BiOTkAsAAAAOhsfvSf2LbXsFXD1qKkn9i23J4/cc2r5ghPJMLgAouV07d2bdquV58dknU3/U9Mxe0JraMb7iAWDYPdc+tOOA1+QMGABKbO3ymzJt5bKckC2969rvnJSNLUtzUuuiYewMAMiRTUM7DnhNblcEgJJau/ymzL3nM5lcbOmzfnKxJXPv+UzWLr9pmDoDAJIkx5yaNExLsp/7FVNJGqbvHgccMCEXAJTQrp07M23lsiT7f5Dt1JXLsmvnzkPcGQDQq6Y2ef9XXl54ddD18vL7L989DjhgQi4AKKF1q5anKVte80G2zdmSdauWH9rGAIC+5pydnH9z0jC17/qGabvXzzl7ePqCEcgzuQCghF589skhHQcAHERzzk5mn7n7VxSfa9/9DK5jTnUFFwwxIRcAlFD9UdOHdBxUi13dRVavfyabt23PlPHjMn/WxNTu75JFgDKpqU1mnT7cXcCIJuQCgBKavaA17XdOyuRi37csdhfJ5sqkzF7Qeuibg0G646FNWXb7I9nUsb133dTGcVl61py8/8Spr/FOAADP5AKAUqodMyYbW5Ym2R1o7alneVPL0tSO8f+zKIc7HtqUi797X5+AK0naOrbn4u/elzse2jRMnQEAZSHkAoCSOql1UR449Zo8VZnUZ/3myqQ8cOo1Oal10TB1BgOzq7vIstsfSbGPbT3rlt3+SHa9OtEFANiD/70LACV2Uuui7HrPBXl41fK8+OyTqT9qemYvaE2zK7gokdXrn9nrCq49FUk2dWzP6vXPpOWPJu13HAAwujkDBoCSqx0zJiecdmbv8q6dO/PwL/6lN/Q6dt578tiaFX1CsCRZt0cwNpgx1VS3mnpRd+Dv+f2vf51TanZmdffsJMn8mnWZkq3ZnAlZ3T073S/ffPCL3zyVeTMb8tgv/7+qOMZq+OzUrd5e1K2+Xg5l3dkLWj0yAIZBpSiKQV/3ffnll2fJkiW59NJLc/XVVydJtm/fns997nO59dZb09XVldbW1lx77bVpamrqV83Ozs40Njamo6MjDQ0Ng20NAEaltctvyrSVy9KULb3rdhWV1FZe+bp/NkemkmRCnjugMdVUt5p6UXfw73mmODJJMrHyypiNxcQs23FhlnfPT2vN6vzd2JsztfJMVRxjNX126lZfL+pWXy+Hsm57JmVjy1KPDoAh0t+saNAh1y9/+cucf/75aWhoyB//8R/3hlwXX3xx/uVf/iXf+c530tjYmE996lOpqanJL37xiyFtHADoa+3ymzL3ns8kSZ9fXCyKpPKq5WTvdYMZU011q6kXdYeul57HcH1z55/kE2P+Ocnef76H8xgPVt1q6qVsdaupF3Wrr5dDVbfn7y7PyISh0d+saFAPnn/uuedywQUX5Fvf+laOOuqo3vUdHR25/vrrc+WVV+bd73535s2blxtvvDH33HNP7r333sHsCgDoh107d2baymVJ+gYASd+T7p7lfa0bzJhqqltNvag7dL30/Hn++Jgf9lk+0Lqj4bMbrXWrqRd1q6+XQ/1319SVy7Jr584Ah8agQq5LLrkkZ555ZhYuXNhn/Zo1a7Jjx44+62fPnp2jjz46K1eu3Getrq6udHZ29nkBAAOzbtXyNGXLXgEAjAQ1laS20u3PN1AqNZWkOVuybtXy4W4FRo0BPwnv1ltvzX333Zdf/vKXe21ra2vLYYcdlgkTJvRZ39TUlLa2tn3Wu+yyy7Js2bKBtgEA7OHFZ58c7hYAgH3wHQ2HzoCu5NqwYUMuvfTSfO9738u4ceOGpIElS5ako6Oj97Vhw4YhqQsAo0n9UdOHuwUAYB98R8OhM6CQa82aNdm8eXNOPvnkjBkzJmPGjMldd92Va665JmPGjElTU1NeeumlbN26tc/72tvb09zcvM+adXV1aWho6PMCAAZm9oLWtGdS74NuAYDh1V0kbZmU2Qtah7sVGDUGFHK95z3vyYMPPpj777+/9/W2t70tF1xwQe9/jx07NitWrOh9z6OPPponnngiLS0tQ948ALBb7Zgx2diyNEn2Crpe/TvKRbHvdYMZU011q6kXdYeul9cz3MdYzZ/daK1bTb2oW329HKq6Pd/Fm1qWpnbMgJ8SBAzSgGbb+PHjc+KJJ/ZZd8QRR2TSpEm96y+66KIsXrw4EydOTENDQz796U+npaUlp5xyytB1DQDs5aTWRVmbZNrKZWnKlt713alJbbp7l7dWjkwlyYQ8d0BjqqluNfWi7oH1csRhY3LYS1vTXz47dau1F3Wrr5dDWXdzZVI2tSzNSa2LAhw6Qx4pX3XVVampqcm5556brq6utLa25tprrx3q3QAA+3BS66Lses8FeXjV8rz47JOpP2p6jp33nqxbs6J3uee2iQMdU011q6kXdQ+sl9qaSvLTy5L/fcXr/nnfcOIlmXbOf/LZqVuVvahbfb0cyrqzF7Sm2RVccMhVimKgF4UfXJ2dnWlsbExHR4fncwEAjEbr/3dy05+8/rhF/5zMOv3g9wMADKv+ZkUDeiYXAAAcdMecmjRMS1LZz4BK0jB99zgAgJcJuQAAqC41tcn7v/LywquDrpeX33/57nEAAC8TcgEAUH3mnJ2cf3PSMLXv+oZpu9fPOXt4+gIAqpYn4QEAUJ3mnJ3MPjN5/J7kufbkyKbdtyi6ggsA2AchFwAA1aum1sPlAYB+cbsiAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0vPgeaC0dnUXWb3+mWzetj1Txo/L/FkTU1tT6fd2AAAARg4hF1BKdzy0KctufySbOrb3rpvaOC5Lz5qT95849XW3AwAAMLJUiqIohruJPXV2dqaxsTEdHR1paGgY7naAKnTHQ5ty8Xfvy6v/8uq5RusT75yVb969fr/br/vTkwVdAAAAJdHfrMgzuYBS2dVdZNntj+wVYCVJ8fLrW/9774CrZ3uSLLv9kezqrqp8HwAAgAMk5AJKZfX6Z/rcgrgvr5VfFUk2dWzP6vXPDG1jAAAADCvP5AKq1q6dO7Nu1fK8+OyTqT9qeo59+/vyi9883bu9Jt2ZX7MuU7I1mzMhq7tnp3uP7H7P7U9l9yWtk9OZzZmQjVtm5+G2e1+pPe89eWzNikEt1zU2J0m6OtoOuNahrD1SjqOstQe6r9kLWlM7xtc2AIwUe53rjpBzFrWrq/ZoO4f0TC6gKq1dflOmrVyWpmzpXbepmJi/23FhlnfPT2vN6iwde3OmVV65ImtjMTHLXmP7nnYVldRWiiFbLmvtkXIcZa09kH21Z1I2tizNSa2L9jkeACiPfZ3rjpRzFrWrq/ZIOYfsb1Yk5AKqztrlN2XuPZ9JktRUXlnfcxviN3f+ST4x5p8HvH1PRZFUKkO3XNbaI+U4ylp7IPvq+fP9wKnXlP4kBQBGs/2d646Ucxa1q6v2SDmHFHIBpbRr5848/eU3ZXKxZZ8BVXeRFKlJJd2D2g5l1l0kmyuTMvlvfz2qLjsHgJHi9c514WAYCeeQfl0RKKV1q5anKfv/0q+pJLWV/QdYr7cdyqymkjRnS9atWj7crQAAg/B657pwMIymc0ghF1BVXnz2yeFuAaqeeQIA5eQ7nOE0Gv78CbmAqlJ/1PThbgGqnnkCAOXkO5zhNBr+/Am5gKoye0Fr2jOp9wGJwCu6i6QtkzJ7QetwtwIADIJzXYbDaDqHFHIBVaV2zJhsbFmaJHt9+b/6ZzIGujyUtUZK7ZFyHGWtPZB99cyHTS1LS/vAUAAY7cp6rjtSzr1GY+3Rdg4p5AKqzkmti/LAqdfkqcqkPutf/TO6A13eU/er/vo70OWy1h4px1HW2gPZ1+bKpNL/9DMAsP9z3ZFyzqJ2ddUebeeQlaJ4rYzw0Ovvz0ICI9+unTvzxI+uyqw1Xz7wWu/9ctYVf5AXt25K/VHTc+y89+SxNSvy4rNPHvByXWNzkqSro61UtUfKcZS19kD3NXtB66j4v28AMFrs2rkz61YtH3HnLGpXV+2Rcg7Z36xIyAVUtwf/Kfl/LzrwOuden7z5vAOvAwAAwCHV36zI7YpAdTuyqbrqAAAAUJWEXEB1O+bUpGFaktd4wFal5jW2V5KG6bvrAAAAMGIJuYDqVlObvP8rLy+8Osiq7H61fOo1tid5/+W76wAAADBiCbmA6jfn7OT8m5OGqX3XN0zbvf59/89rb59z9qHrFQAAgGHhwfNAeXTvSh6/J3muffczto45te8VWq+3HQAAgNLpb1ZU/t+RBEaPmtpk1umD3w4AAMCI5XZFAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKb8xwNzDS7dq5M+tWLc+Lzz6ZusbmJElXR1vqj5qeY+e9J4+tWbHXtoM5Tu3q7MHx7Xvc7AWtqR3jrykAAABeX6UoiqK/g6+77rpcd911+d3vfpckOeGEE/KlL30pZ5xxRpJk+/bt+dznPpdbb701XV1daW1tzbXXXpumpqZ+N9TZ2ZnGxsZ0dHSkoaFhYEdTZdYuvynTVi5LU7bsc/uuopLayut//EM9Tu3q7OFg1q6GHgbznvZMysaWpTmpddGA6gMAADBy9DcrGtDtijNmzMjll1+eNWvW5Fe/+lXe/e5354Mf/GAefvjhJMlnP/vZ3H777fn+97+fu+66Kxs3bsyHPvShAzuSklq7/KbMveczmVzsO+BKkpr0LxgY6nFqV2cPB7N2NfQwmPdMLrZk7j2fydrlNw14HwAAAIwuA7qSa18mTpyYK664Iuedd14mT56cW265Jeedd16SZN26dTn++OOzcuXKnHLKKf2qNxKu5Nq1c2ee/vKbMrnYkprKcHcD5dZdJJsrkzL5b3/t1kUAAIBR6KBcybWnXbt25dZbb83zzz+flpaWrFmzJjt27MjChQt7x8yePTtHH310Vq5cud86XV1d6ezs7PMqu3WrlqcpAi4YCjWVpDlbsm7V8uFuBQAAgCo24JDrwQcfzJFHHpm6urp88pOfzG233ZY5c+akra0thx12WCZMmNBnfFNTU9ra2vZb77LLLktjY2Pva+bMmQM+iGrz4rNPDncLMOKYVwAAALyWAYdcxx13XO6///6sWrUqF198cRYtWpRHHnlk0A0sWbIkHR0dva8NGzYMula1qD9q+nC3ACOOeQUAAMBrGfADbg477LC88Y1vTJLMmzcvv/zlL/P3f//3+fCHP5yXXnopW7du7XM1V3t7e5qbm/dbr66uLnV1dQPvvIrNXtCa9jsneSYXDIGeZ3LNXtA63K0AAABQxQb9TK4e3d3d6erqyrx58zJ27NisWLGid9ujjz6aJ554Ii0tLQe6m1KpHTMmG1uWJtn9D/T96e8j/4d6nNrV2cPBrF0NPQzmPT3zZ1PLUg+dBwAA4DUN6F+NS5YsyRlnnJGjjz4627Ztyy233JKf/exnWb58eRobG3PRRRdl8eLFmThxYhoaGvLpT386LS0t/f5lxZHkpNZFWZtk2splacqWfY7pTk1q0/26tYZ6nNrV2cPBrF0NPQzmPZsrk7KpZWlOal00oPoAAACMPgMKuTZv3pwLL7wwmzZtSmNjY97ylrdk+fLlee9735skueqqq1JTU5Nzzz03XV1daW1tzbXXXntQGi+Dk1oXZdd7LsjDq5bnxWefTF3j7ts2uzraUn/U9Bw77z1Zt2bFXtsO5ji1q7MHx7fvcbMXtKbZFVwAAAD0Q6UoBnOz0cHT2dmZxsbGdHR0pKGhYbjbAQAAAGAY9TcrOuBncgEAAADAcBNyAQAAAFB6Qi4AAAAASk/IBQAAAEDpCbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6Qi4AAAAASk/IBQAAAEDpCbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHoDCrkuu+yyvP3tb8/48eMzZcqUnHPOOXn00Uf7jNm+fXsuueSSTJo0KUceeWTOPffctLe3D2nTAAAAALCnAYVcd911Vy655JLce++9ufPOO7Njx468733vy/PPP9875rOf/Wxuv/32fP/7389dd92VjRs35kMf+tCQNw4AAAAAPSpFURSDffNTTz2VKVOm5K677so73/nOdHR0ZPLkybnlllty3nnnJUnWrVuX448/PitXrswpp5zyujU7OzvT2NiYjo6ONDQ0DLY1AAAAAEaA/mZFB/RMro6OjiTJxIkTkyRr1qzJjh07snDhwt4xs2fPztFHH52VK1fus0ZXV1c6Ozv7vAAAAABgIAYdcnV3d+ev/uqvctppp+XEE09MkrS1teWwww7LhAkT+oxtampKW1vbPutcdtllaWxs7H3NnDlzsC0BAAAAMEoNOuS65JJL8tBDD+XWW289oAaWLFmSjo6O3teGDRsOqB4AAAAAo8+YwbzpU5/6VP75n/85d999d2bMmNG7vrm5OS+99FK2bt3a52qu9vb2NDc377NWXV1d6urqBtMGAAAAACQZ4JVcRVHkU5/6VG677bb85Cc/yaxZs/psnzdvXsaOHZsVK1b0rnv00UfzxBNPpKWlZWg6BgAAAIBXGdCVXJdcckluueWW/M//+T8zfvz43udsNTY2pr6+Po2NjbnooouyePHiTJw4MQ0NDfn0pz+dlpaWfv2yIgAAAAAMRqUoiqLfgyuVfa6/8cYb8+d//udJku3bt+dzn/tc/vt//+/p6upKa2trrr322v3ervhq/f1ZSAAAAABGvv5mRQMKuQ4FIRcAAAAAPfqbFQ361xUBAAAAoFoIuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6Qi4AAAAASk/IBQAAAEDpCbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6Qi4AAAAASk/IBQAAAEDpCbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACi9AYdcd999d84666xMmzYtlUolP/jBD/psL4oiX/rSlzJ16tTU19dn4cKFeeyxx4aqXwAAAADYy4BDrueffz5z587N1772tX1u/+pXv5prrrkmX//617Nq1aocccQRaW1tzfbt2w+4WQAAAADYlzEDfcMZZ5yRM844Y5/biqLI1Vdfnb/927/NBz/4wSTJzTffnKampvzgBz/IRz7ykb3e09XVla6urt7lzs7OgbYEAAAAwCg3pM/kWr9+fdra2rJw4cLedY2NjVmwYEFWrly5z/dcdtllaWxs7H3NnDlzKFsCAAAAYBQY0pCrra0tSdLU1NRnfVNTU++2V1uyZEk6Ojp6Xxs2bBjKlgAAAAAYBQZ8u+JQq6urS11d3XC3AQAAAECJDemVXM3NzUmS9vb2Puvb29t7twEAAADAUBvSkGvWrFlpbm7OihUretd1dnZm1apVaWlpGcpdAQAAAECvAd+u+Nxzz+U3v/lN7/L69etz//33Z+LEiTn66KPzV3/1V/nyl7+cY489NrNmzcoXv/jFTJs2Leecc85Q9g0AAAAAvQYccv3qV7/KH//xH/cuL168OEmyaNGifOc738l/+A//Ic8//3w+8YlPZOvWrXnHO96RO+64I+PGjRu6rgEAAABgD5WiKIrhbmJPnZ2daWxsTEdHRxoaGoa7HQAAAACGUX+zoiF9JhcAAAAADAchFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6Qi4AAAAASk/IBQAAAEDpCbkAAAAAKD0hFwAAAAClJ+QCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQekIuAAAAAEpPyAUAAABA6Qm5AAAAACg9IRcAAAAApSfkAgAAAKD0hFwAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOmNGe4GRrpd3bty3+b78tQLT2VS/aQURZFntj+TyYdPztw3zM0DTz+w17aDOU7t6uzB8b3+uANdVnvkHkdZaw90XydPOTm1NbV9vld61ifps+719tuf95StbjX1om719VK2utXUS9nqVlMv6lZfL4ey7mD2NVLOWdSurto955CjhZDrIPrx4z/O5asvT/sL7fvcXlOpSXfR/bp1hnqc2tXZw8GsXQ09DEXtA11We+QeR1lrD2RfTYc35QOzPpAfrv9hn++VxsMak0rS0dXR7/305z1lq1tNvahbfb2UrW419VK2utXUi7rV18uhrDuYfY2Ucxa1q6t20+FN+Zv5f5OFxyzcZ72RplIURXEwCn/ta1/LFVdckba2tsydOzf/5b/8l8yfP/9139fZ2ZnGxsZ0dHSkoaHhYLR2SPz48R9n8c8Wp8hB+XgBAAAAXlMllSTJle+6stRBV3+zooPyTK5/+Id/yOLFi7N06dLcd999mTt3blpbW7N58+aDsbuqs6t7Vy5ffbmACwAAABg2PbnEV1Z/Jbu6dw1zNwffQQm5rrzyynz84x/PX/zFX2TOnDn5+te/nsMPPzw33HDDXmO7urrS2dnZ51V2922+b7+3KAIAAAAcKkWKtL3Qlvs23zfcrRx0Qx5yvfTSS1mzZk0WLnzlMriamposXLgwK1eu3Gv8ZZddlsbGxt7XzJkzh7qlQ+6pF54a7hYAAAAAeo2GrGLIQ66nn346u3btSlNTU5/1TU1NaWtr22v8kiVL0tHR0fvasGHDULd0yE0+fPJwtwAAAADQazRkFcP+64p1dXWpq6sb7jaG1MlTTk7T4U3Z/MJmz+UCAAAAhk0llTQd3pSTp5w83K0cdEN+Jdcb3vCG1NbWpr297zOp2tvb09zcPNS7q0q1NbX5m/l/k+SVXzIAAAAAOJR6MokvzP9Camtqh7mbg2/IQ67DDjss8+bNy4oVK3rXdXd3Z8WKFWlpaRnq3VWthccszJXvujJTDp+y3zE1lf59/EM9Tu3q7OFg1q6GHoai9oEuqz1yj6OstQeyr+bDm/MXJ/xFmg7v+ziACYdNSGNd44D205/3lK1uNfWibvX1Ura61dRL2epWUy/qVl8vh7LuYPY1Us5Z1K6u2k2HN+XKd12ZhccszGhQKYpiyO+n+4d/+IcsWrQo3/jGNzJ//vxcffXV+cd//MesW7dur2d1vVpnZ2caGxvT0dGRhoaGoW7tkNvVvSv3bb4vT73wVCbVT0pRFHlm+zOZfPjkzH3D3Dzw9AN7bTuY49Suzh4c3+uPO9BltUfucZS19kD3dfKUk1NbU9vne6VnfZI+615vv/15T9nqVlMv6lZfL2WrW029lK1uNfWibvX1cijrDmZfI+WcRe3qqt1zDll2/c2KDkrIlST/9b/+11xxxRVpa2vLW9/61lxzzTVZsGDB675vpIVcAAAAAAzesIdcgyXkAgAAAKBHf7Oi/d/oCQAAAAAlIeQCAAAAoPSEXAAAAACUnpALAAAAgNITcgEAAABQemOGu4FX6/mxx87OzmHuBAAAAIDh1pMR9WRG+1N1Ide2bduSJDNnzhzmTgAAAACoFtu2bUtjY+N+t1eK14vBDrHu7u5s3Lgx48ePT6VSGe52DkhnZ2dmzpyZDRs2pKGhYbjbgapgXkBf5gTszbyAvswJ2Jt5MboURZFt27Zl2rRpqanZ/5O3qu5KrpqamsyYMWO42xhSDQ0NJh28inkBfZkTsDfzAvoyJ2Bv5sXo8VpXcPXw4HkAAAAASk/IBQAAAEDpCbkOorq6uixdujR1dXXD3QpUDfMC+jInYG/mBfRlTsDezAv2peoePA8AAAAAA+VKLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9EZNyHX33XfnrLPOyrRp01KpVPKDH/ygz/YdO3bkC1/4Qt785jfniCOOyLRp03LhhRdm48aNr1v7iSeeyJlnnpnDDz88U6ZMyV//9V9n586dfcZ0dXXlP/7H/5hjjjkmdXV1+YM/+IPccMMNB1T3Zz/7WSqVyl6vtra2/n8wjGojcV4Mti4kI3NO/Pmf//k+vytOOOGE/n8wjGojcV4kyfe+973MnTs3hx9+eKZOnZqPfexj2bJlS/8+FEa1kTonvva1r+X4449PfX19jjvuuNx88839+0Ag5ZwXn/nMZzJv3rzU1dXlrW996z7H/Ou//mtOP/30jBs3LjNnzsxXv/rV1+2X4TVmuBs4VJ5//vnMnTs3H/vYx/KhD31or+0vvPBC7rvvvnzxi1/M3Llz8+yzz+bSSy/N2WefnV/96lf7rbtr166ceeaZaW5uzj333JNNmzblwgsvzNixY/Of//N/7h13/vnnp729Pddff33e+MY3ZtOmTenu7j7gukny6KOPpqGhoXd5ypQpA/loGMVG6rwYaF3oMRLnxN///d/n8ssv733Pzp07M3fu3Pzbf/tvB/MRMQqNxHnxi1/8IhdeeGGuuuqqnHXWWXnyySfzyU9+Mh//+MfzP/7H/ziAT4vRYCTOieuuuy5LlizJt771rbz97W/P6tWr8/GPfzxHHXVUzjrrrAP4tBgtyjYvenzsYx/LqlWr8q//+q97bevs7Mz73ve+LFy4MF//+tfz4IMP5mMf+1gmTJiQT3ziE/38ZDjkilEoSXHbbbe97rjVq1cXSYrHH398v2N++MMfFjU1NUVbW1vvuuuuu65oaGgourq6iqIoih/96EdFY2NjsWXLln732J+6P/3pT4skxbPPPtvvurA/I2VeDKYu7MtImROvdttttxWVSqX43e9+1+/9QI+RMi+uuOKK4g//8A/7vO+aa64ppk+f3u/9QFGMnDnR0tJSfP7zn+/zvsWLFxennXZav/cDPcowL/a0dOnSYu7cuXutv/baa4ujjjqqzznVF77wheK4444b1H44NEbN7YqD0dHRkUqlkgkTJux3zMqVK/PmN785TU1NvetaW1vT2dmZhx9+OEnyv/7X/8rb3va2fPWrX8306dPzpje9KZ///Ofz4osvHlDdHm9961szderUvPe9780vfvGLQR4t9E+1z4vB1IUDUe1z4tWuv/76LFy4MMccc8wAjxT6r9rnRUtLSzZs2JAf/vCHKYoi7e3t+ad/+qd84AMfOMAjh32r9jnR1dWVcePG9XlffX19Vq9enR07dgzmkOF1Dee86I+VK1fmne98Zw477LA++3700Ufz7LPPHlBtDp5Rc7viQG3fvj1f+MIX8tGPfrTPrYCv1tbW1mfCJeld7nk21v/9v/83P//5zzNu3Ljcdtttefrpp/Pv//2/z5YtW3LjjTcOuu7UqVPz9a9/PW9729vS1dWVb3/723nXu96VVatW5eSTTx7cgcNrKMO8GExdGKwyzIk9bdy4MT/60Y9yyy239P8gYYDKMC9OO+20fO9738uHP/zhbN++PTt37sxZZ52Vr33ta4M7aHgNZZgTra2t+fa3v51zzjknJ598ctasWZNvf/vb2bFjR55++ulMnTp1cAcP+zHc86I/2traMmvWrP3u+6ijjhp0bQ4eV3Ltw44dO3L++eenKIpcd911vevPOOOMHHnkkTnyyCMH9MDe7u7uVCqVfO9738v8+fPzgQ98IFdeeWVuuummA0qXjzvuuPzlX/5l5s2bl1NPPTU33HBDTj311Fx11VWDrgn7U5Z5cbDqwquVZU7s6aabbsqECRNyzjnnDEk9eLWyzItHHnkkl156ab70pS9lzZo1ueOOO/K73/0un/zkJwddE/alLHPii1/8Ys4444yccsopGTt2bD74wQ9m0aJFSZKaGv9kZGiVZV5QTq7kepWeCff444/nJz/5SZ9U+dvf/nbvJBk7dmySpLm5OatXr+5To729vXdbsvuKq+nTp6exsbF3zPHHH5+iKPL73/8+xx577F599KfuvsyfPz8///nP+3280B9lmheDqQsDVaY50aMoitxwww35sz/7sz6X3cNQKdO8uOyyy3Laaaflr//6r5Mkb3nLW3LEEUfk9NNPz5e//GVXrTAkyjQn6uvrc8MNN+Qb3/hG2tvbM3Xq1Hzzm9/M+PHjM3ny5AP6HGBP1TIv+qO5ubl3X/vbN9VHLL+Hngn32GOP5cc//nEmTZrUZ/v06dPzxje+MW984xt7n2XS0tKSBx98MJs3b+4dd+edd6ahoSFz5sxJsvuS+I0bN+a5557rHfPrX/86NTU1mTFjxj576U/dfbn//vudmDGkyjYvBlMXBqJsc6LHXXfdld/85je56KKLDuwDgH0o27x44YUX9ro6pba2NsnuQBgOVNnmRI+xY8dmxowZqa2tza233po/+ZM/cSUXQ6aa5kV/tLS05O677+7zXLo777wzxx13nFsVq9mhf9b98Ni2bVuxdu3aYu3atUWS4sorryzWrl3b+0sOL730UnH22WcXM2bMKO6///5i06ZNva/9/UJVURTFzp07ixNPPLF43/veV9x///3FHXfcUUyePLlYsmRJn33PmDGjOO+884qHH364uOuuu4pjjz22+Hf/7t8dUN2rrrqq+MEPflA89thjxYMPPlhceumlRU1NTfHjH/94CD4xRoOROC8GUxd6jMQ50eNP//RPiwULFhzAp8NoNRLnxY033liMGTOmuPbaa4vf/va3xc9//vPibW97WzF//vwh+MQY6UbinHj00UeL//bf/lvx61//uli1alXx4Q9/uJg4cWKxfv36A//AGBXKNi+Koigee+yxYu3atcVf/uVfFm9605t6++/pZ+vWrUVTU1PxZ3/2Z8VDDz1U3HrrrcXhhx9efOMb3xiCT4yDZdSEXD/96U+LJHu9Fi1aVBRFUaxfv36f25MUP/3pT1+z9u9+97vijDPOKOrr64s3vOENxec+97lix44dfcb8n//zf4qFCxcW9fX1xYwZM4rFixcXL7zwwgHV/cpXvlL80R/9UTFu3Lhi4sSJxbve9a7iJz/5yaA+H0ankTgvBlsXimLkzomtW7cW9fX1xTe/+c0BfyYwUufFNddcU8yZM6eor68vpk6dWlxwwQXF73//+wF/Pow+I3FOPPLII8Vb3/rWor6+vmhoaCg++MEPFuvWrRvU58PoVMZ58W/+zb/ZZz97hrsPPPBA8Y53vKOoq6srpk+fXlx++eWD+Xg4hCpF4ZpsAAAAAMrNDdYAAAAAlJ6QCwAAAIDSE3IBAAAAUHpCLgAAAABKT8gFAAAAQOkJuQAAAAAoPSEXAAAAAKUn5AIAAACg9IRcAAAAAJSekAsAAACA0hNyAQAAAFB6/z8E/K9r9/me9QAAAABJRU5ErkJggg==",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
},
|
|
{
|
|
"data": {
|
|
"image/png": "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vOMdUVNT07lu7ty5kc/n41e/+lVERKxatSrOOeec+PrXvx5TpkyJt73tbfHFL34x/u///q9P/XY466yzYtKkSfH+978/fvazn/Vyb+HNVfqc6E2/0FeVPi+OdMcdd0RjY2NMmzatyD2Fnqv0edHQ0BDbtm2L73//+5EkSbS0tMR//Md/xAc/+ME+7jl0r9LnRVtbW4wYMaLL90aOHBkbNmyIAwcO9GaX4U2Vc170xLp16+Ld7353DB8+vMvYmzdvjldffbVPfdM/Bs3tisXat29fLFu2LD784Q93uRXwSM3NzV0mW0R0Lnc8G+t///d/47HHHosRI0bEgw8+GC+//HL8zd/8Tbzyyitx11139brfSZMmxW233RbnnHNOtLW1xe233x7vec97Yv369XH22Wf3bsehG2mYE73pF/oiDfPicE1NTfGDH/wg7r333p7vJBQpDfPivPPOi3vuuSc+9KEPxb59++K1116LBQsWxM0339y7nYY3kYZ5MXfu3Lj99tvjoosuirPPPjs2btwYt99+exw4cCBefvnlmDRpUu92HrpR7nnRE83NzXHKKad0O/aJJ57Y677pH67kOoYDBw7EpZdeGkmSxK233tq5fv78+TF69OgYPXp0UQ/sbW9vj0wmE/fcc0/MmjUrPvjBD8YNN9wQ3/ve9/qULJ922mnx6U9/OmbOnBlz5syJO++8M+bMmRM33nhjr/uEY0nLnOivfuFY0jIvDve9730vxo4dGxdddFFJ+oMjpWVebNq0Ka666qr4yle+Ehs3bozVq1fH73//+/jMZz7T6z6hO2mZF1/+8pdj/vz5ce6558awYcPiwgsvjMsuuywiIqqq/M9GSist84L0cSXXETom29atW+PHP/5xl0T59ttv75wgw4YNi4iI2tra2LBhQ5c+WlpaOrdFFK64mjJlSuRyuc42p59+eiRJEn/4wx/irW9961F19KTfY5k1a1Y89thjPd5feDNpmhO96Rd6I03zokOSJHHnnXfGxz72sS6X3EOppGlerFixIs4777z40pe+FBERZ555Zpxwwglx/vnnx9e+9jVXrFAyaZoXI0eOjDvvvDO+9a1vRUtLS0yaNCm+/e1vx5gxY2LChAl9Og5wuEqZFz1RW1vbOVZ3Y1NZRPKH6Zhszz//fDzyyCMxfvz4LtunTJkSp556apx66qmdzzJpaGiI5557Lnbs2NHZ7kc/+lFks9mor6+PiMIl8U1NTbF79+7ONr/5zW+iqqoqpk6desxaetLvsTz77LNOzCiZtM2J3vQLxUrbvOiwdu3a+O1vfxtXXHFF3w4AHEPa5sXevXuPujJlyJAhEVEIhKEU0jYvOgwbNiymTp0aQ4YMifvuuy/+4i/+wpVclEwlzYueaGhoiEcffbTLc+l+9KMfxWmnneZWxUp1/J91Xx67du1KnnnmmeSZZ55JIiK54YYbkmeeeabzLQ779+9PFi5cmEydOjV59tlnk+3bt3d+untDVZIkyWuvvZacccYZyQc+8IHk2WefTVavXp1MmDAhWb58eZexp06dmlxyySXJr371q2Tt2rXJW9/61uSv//qv+9TvjTfemDz00EPJ888/nzz33HPJVVddlVRVVSWPPPJICY4YA91AnBO96RcONxDnRYePfvSjyezZs/twdBisBuK8uOuuu5KhQ4cmt9xyS/K73/0ueeyxx5JzzjknmTVrVgmOGIPBQJwXmzdvTv71X/81+c1vfpOsX78++dCHPpSMGzcu2bJlS98PGINC2uZFkiTJ888/nzzzzDPJpz/96eRtb3tbZ/0d9ezcuTOpqalJPvaxjyW//OUvk/vuuy8ZNWpU8q1vfasER4z+MGhCrp/85CdJRBz1ueyyy5IkSZItW7Ycc3tEJD/5yU/esO/f//73yfz585ORI0cmJ510UvKFL3whOXDgQJc2//M//5M0NjYmI0eOTKZOnZosXbo02bt3b5/6ve6665I//dM/TUaMGJGMGzcuec973pP8+Mc/7tXxYfAZiHOit/1Ch4E6L3bu3JmMHDky+fa3v130MYGBOi9uuummpL6+Phk5cmQyadKk5CMf+Ujyhz/8oejjw+A0EOfFpk2bkrPOOisZOXJkks1mkwsvvDD59a9/3avjw+CUxnnxZ3/2Z8es5/Bw9+c//3nyrne9K6murk6mTJmSrFy5sjeHh+MkkySuyQYAAAAg3dxcDQAAAEDqCbkAAAAASD0hFwAAAACpJ+QCAAAAIPWEXAAAAACknpALAAAAgNQTcgEAAACQekIuAAAAAFJPyAUAAABA6gm5AAAAAEg9IRcAAAAAqff/ATGg2NXk4DXwAAAAAElFTkSuQmCC",
|
|
"text/plain": [
|
|
"<Figure size 1500x400 with 1 Axes>"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"import matplotlib.pyplot as plt\n",
|
|
"# history1170['date_time'].min()\n",
|
|
"# history1170['date_time'].max()\n",
|
|
"for inter_no, history_ in history[history['date_time'] > datetime(2023, 12, 6, 5)].groupby('inter_no'):\n",
|
|
" plt.figure(figsize=(15, 4))\n",
|
|
" plt.scatter(history_['date_time'], history_['A1_dur'])\n",
|
|
" plt.scatter(history_['date_time'], history_['A2_dur'])\n",
|
|
" plt.scatter(history_['date_time'], history_['A3_dur'])\n",
|
|
"# plt.ylim(min_dur,max_dur)\n",
|
|
"# plt.title(f\"split 그래프 (9월 {day}일)\")\n",
|
|
"# plt.gca().xaxis.set_major_formatter(hours_fmt)\n",
|
|
"# plt.gca().xaxis.set_major_locator(mdates.HourLocator())\n",
|
|
" plt.show()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 95,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"747"
|
|
]
|
|
},
|
|
"execution_count": 95,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"len(history1170)\n",
|
|
"\n",
|
|
"def scatter_graphs(day, duration=False, split=True):\n",
|
|
" # 날짜 지정 (14 ~ 29)\n",
|
|
" day = day\n",
|
|
" start_time = datetime(2022, 9, day, 00, 00)\n",
|
|
" end_time = datetime(2022, 9, day+1, 00, 00)\n",
|
|
" intervals = pd.date_range(start=start_time, end=end_time, freq='30T')\n",
|
|
" history_ = history[history['INT_CREATE_DATE'].dt.day==day].copy()\n",
|
|
" hours_fmt = mdates.DateFormatter('%H')\n",
|
|
" plt.rcParams['font.family'] = 'Malgun Gothic'\n",
|
|
"\n",
|
|
" if duration:\n",
|
|
" # duration 그래프 (전체)\n",
|
|
" plt.figure(figsize=(15, 4))\n",
|
|
" plt.scatter(history_['INT_CREATE_DATE'], history_['duration'])\n",
|
|
" plt.ylim(min_dur,max_dur)\n",
|
|
" plt.title(f\"duration 그래프 (9월 {day}일)\")\n",
|
|
" plt.gca().xaxis.set_major_formatter(hours_fmt)\n",
|
|
" plt.gca().xaxis.set_major_locator(mdates.HourLocator())\n",
|
|
" plt.show()\n",
|
|
" if split:\n",
|
|
" # split 그래프 (전체)\n",
|
|
" plt.figure(figsize=(15, 4))\n",
|
|
" plt.scatter(history_['INT_CREATE_DATE'], history_['INT_SPLIT1'])\n",
|
|
" plt.scatter(history_['INT_CREATE_DATE'], history_['INT_SPLIT2'])\n",
|
|
" plt.scatter(history_['INT_CREATE_DATE'], history_['INT_SPLIT3'])\n",
|
|
" plt.ylim(min_dur,max_dur)\n",
|
|
" plt.title(f\"split 그래프 (9월 {day}일)\")\n",
|
|
" plt.gca().xaxis.set_major_formatter(hours_fmt)\n",
|
|
" plt.gca().xaxis.set_major_locator(mdates.HourLocator())\n",
|
|
" plt.show()"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 60,
|
|
"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>SPOT_INTS_ID</th>\n",
|
|
" <th>datetime</th>\n",
|
|
" <th>CLCT_DT</th>\n",
|
|
" <th>LC_CNT</th>\n",
|
|
" <th>CTRL_SE_CD</th>\n",
|
|
" <th>CTRL_STTS_CD</th>\n",
|
|
" <th>SPCN_CTRL_SE_CD</th>\n",
|
|
" <th>CYCL_HR</th>\n",
|
|
" <th>OFST_HR</th>\n",
|
|
" <th>A_RING_1_PHAS_HR</th>\n",
|
|
" <th>A_RING_2_PHAS_HR</th>\n",
|
|
" <th>A_RING_3_PHAS_HR</th>\n",
|
|
" <th>A_RING_4_PHAS_HR</th>\n",
|
|
" <th>A_RING_5_PHAS_HR</th>\n",
|
|
" <th>A_RING_6_PHAS_HR</th>\n",
|
|
" <th>A_RING_7_PHAS_HR</th>\n",
|
|
" <th>A_RING_8_PHAS_HR</th>\n",
|
|
" <th>B_RING_1_PHAS_HR</th>\n",
|
|
" <th>B_RING_2_PHAS_HR</th>\n",
|
|
" <th>B_RING_3_PHAS_HR</th>\n",
|
|
" <th>B_RING_4_PHAS_HR</th>\n",
|
|
" <th>B_RING_5_PHAS_HR</th>\n",
|
|
" <th>B_RING_6_PHAS_HR</th>\n",
|
|
" <th>B_RING_7_PHAS_HR</th>\n",
|
|
" <th>B_RING_8_PHAS_HR</th>\n",
|
|
" <th>PSNT_A_RING_PHAS_NO</th>\n",
|
|
" <th>PSNT_B_RING_PHAS_NO</th>\n",
|
|
" <th>PSNT_A_RING_STEP_NO</th>\n",
|
|
" <th>PSNT_B_RING_STEP_NO</th>\n",
|
|
" <th>SGNL_MAP_NO</th>\n",
|
|
" <th>A_RING_MVMT_NO</th>\n",
|
|
" <th>B_RING_MVMT_NO</th>\n",
|
|
" <th>HR_PLAN_NO</th>\n",
|
|
" <th>TM_OPER_NO</th>\n",
|
|
" </tr>\n",
|
|
" </thead>\n",
|
|
" <tbody>\n",
|
|
" <tr>\n",
|
|
" <th>0</th>\n",
|
|
" <td>14638</td>\n",
|
|
" <td>2023-11-21 16:32:51</td>\n",
|
|
" <td>20231121</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>140</td>\n",
|
|
" <td>120</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>48</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>48</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>48</td>\n",
|
|
" <td>22</td>\n",
|
|
" <td>48</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>18</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>1</th>\n",
|
|
" <td>1001</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>66</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>150</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>70</td>\n",
|
|
" <td>45</td>\n",
|
|
" <td>55</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>2</th>\n",
|
|
" <td>1002</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>52</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>163</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>76</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>32</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>76</td>\n",
|
|
" <td>31</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>11</td>\n",
|
|
" <td>11</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3</th>\n",
|
|
" <td>1003</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>91</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>170</td>\n",
|
|
" <td>125</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>33</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>29</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>25</td>\n",
|
|
" <td>33</td>\n",
|
|
" <td>26</td>\n",
|
|
" <td>29</td>\n",
|
|
" <td>23</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>10</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>9</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",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" <td>...</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3075</th>\n",
|
|
" <td>8636</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>159</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>7</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3076</th>\n",
|
|
" <td>8635</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>133</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>159</td>\n",
|
|
" <td>11</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>5</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>8</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3077</th>\n",
|
|
" <td>11478</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>103</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>110</td>\n",
|
|
" <td>91</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>35</td>\n",
|
|
" <td>20</td>\n",
|
|
" <td>34</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>4</td>\n",
|
|
" <td>13</td>\n",
|
|
" <td>13</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>6</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>3</td>\n",
|
|
" </tr>\n",
|
|
" <tr>\n",
|
|
" <th>3078</th>\n",
|
|
" <td>11477</td>\n",
|
|
" <td>2023-12-08 15:58:25</td>\n",
|
|
" <td>20231208</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>3</td>\n",
|
|
" <td>2</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>0</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>17</td>\n",
|
|
" <td>1</td>\n",
|
|
" <td>1</td>\n",
|
|
" </tr>\n",
|
|
" </tbody>\n",
|
|
"</table>\n",
|
|
"<p>3079 rows × 34 columns</p>\n",
|
|
"</div>"
|
|
],
|
|
"text/plain": [
|
|
" SPOT_INTS_ID datetime CLCT_DT LC_CNT CTRL_SE_CD \\\n",
|
|
"0 14638 2023-11-21 16:32:51 20231121 1 0 \n",
|
|
"1 1001 2023-12-08 15:58:25 20231208 66 0 \n",
|
|
"2 1002 2023-12-08 15:58:25 20231208 52 0 \n",
|
|
"3 1003 2023-12-08 15:58:25 20231208 91 0 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"3075 8636 2023-12-08 15:58:25 20231208 34 0 \n",
|
|
"3076 8635 2023-12-08 15:58:25 20231208 133 0 \n",
|
|
"3077 11478 2023-12-08 15:58:25 20231208 103 0 \n",
|
|
"3078 11477 2023-12-08 15:58:25 20231208 0 0 \n",
|
|
"\n",
|
|
" CTRL_STTS_CD SPCN_CTRL_SE_CD CYCL_HR OFST_HR A_RING_1_PHAS_HR \\\n",
|
|
"0 3 2 140 120 22 \n",
|
|
"1 1 2 170 150 70 \n",
|
|
"2 1 2 170 163 32 \n",
|
|
"3 1 2 170 125 34 \n",
|
|
"... ... ... ... ... ... \n",
|
|
"3075 0 2 159 0 0 \n",
|
|
"3076 0 2 159 11 0 \n",
|
|
"3077 0 2 110 91 20 \n",
|
|
"3078 3 2 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_2_PHAS_HR A_RING_3_PHAS_HR A_RING_4_PHAS_HR A_RING_5_PHAS_HR \\\n",
|
|
"0 48 22 48 0 \n",
|
|
"1 45 55 0 0 \n",
|
|
"2 31 31 76 0 \n",
|
|
"3 25 33 26 29 \n",
|
|
"... ... ... ... ... \n",
|
|
"3075 0 0 0 0 \n",
|
|
"3076 0 0 0 0 \n",
|
|
"3077 35 20 34 0 \n",
|
|
"3078 0 0 0 0 \n",
|
|
"\n",
|
|
" A_RING_6_PHAS_HR A_RING_7_PHAS_HR A_RING_8_PHAS_HR B_RING_1_PHAS_HR \\\n",
|
|
"0 0 0 0 22 \n",
|
|
"1 0 0 0 70 \n",
|
|
"2 0 0 0 32 \n",
|
|
"3 23 0 0 34 \n",
|
|
"... ... ... ... ... \n",
|
|
"3075 0 0 0 0 \n",
|
|
"3076 0 0 0 0 \n",
|
|
"3077 0 0 0 20 \n",
|
|
"3078 0 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_2_PHAS_HR B_RING_3_PHAS_HR B_RING_4_PHAS_HR B_RING_5_PHAS_HR \\\n",
|
|
"0 48 22 48 0 \n",
|
|
"1 45 55 0 0 \n",
|
|
"2 31 76 31 0 \n",
|
|
"3 25 33 26 29 \n",
|
|
"... ... ... ... ... \n",
|
|
"3075 0 0 0 0 \n",
|
|
"3076 0 0 0 0 \n",
|
|
"3077 35 20 34 0 \n",
|
|
"3078 0 0 0 0 \n",
|
|
"\n",
|
|
" B_RING_6_PHAS_HR B_RING_7_PHAS_HR B_RING_8_PHAS_HR \\\n",
|
|
"0 0 0 0 \n",
|
|
"1 0 0 0 \n",
|
|
"2 0 0 0 \n",
|
|
"3 23 0 0 \n",
|
|
"... ... ... ... \n",
|
|
"3075 0 0 0 \n",
|
|
"3076 0 0 0 \n",
|
|
"3077 0 0 0 \n",
|
|
"3078 0 0 0 \n",
|
|
"\n",
|
|
" PSNT_A_RING_PHAS_NO PSNT_B_RING_PHAS_NO PSNT_A_RING_STEP_NO \\\n",
|
|
"0 2 2 4 \n",
|
|
"1 1 1 6 \n",
|
|
"2 2 2 11 \n",
|
|
"3 3 3 10 \n",
|
|
"... ... ... ... \n",
|
|
"3075 2 2 7 \n",
|
|
"3076 2 2 5 \n",
|
|
"3077 4 4 13 \n",
|
|
"3078 1 1 1 \n",
|
|
"\n",
|
|
" PSNT_B_RING_STEP_NO SGNL_MAP_NO A_RING_MVMT_NO B_RING_MVMT_NO \\\n",
|
|
"0 4 0 6 18 \n",
|
|
"1 6 0 8 3 \n",
|
|
"2 11 0 5 2 \n",
|
|
"3 10 0 6 2 \n",
|
|
"... ... ... ... ... \n",
|
|
"3075 7 0 8 4 \n",
|
|
"3076 5 0 8 4 \n",
|
|
"3077 13 0 6 2 \n",
|
|
"3078 1 0 17 17 \n",
|
|
"\n",
|
|
" HR_PLAN_NO TM_OPER_NO \n",
|
|
"0 1 3 \n",
|
|
"1 1 9 \n",
|
|
"2 1 9 \n",
|
|
"3 1 9 \n",
|
|
"... ... ... \n",
|
|
"3075 1 3 \n",
|
|
"3076 1 3 \n",
|
|
"3077 1 3 \n",
|
|
"3078 1 1 \n",
|
|
"\n",
|
|
"[3079 rows x 34 columns]"
|
|
]
|
|
},
|
|
"execution_count": 60,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"stts = pd.read_csv('SOITDSPOTINTSSTTS.csv')\n",
|
|
"# var = 3600 * 9\n",
|
|
"# stts['datetime'] = pd.to_datetime(stts['CLCT_UNIX_TM'] + var, unit='s').dt.strftime('%Y-%m-%d %H:%M:%S')\n",
|
|
"# cols = list(stts.columns)\n",
|
|
"stts['datetime'] = pd.to_datetime(stts['CLCT_UNIX_TM'], unit='s', utc=True)\n",
|
|
"stts['datetime'] = stts['datetime'].dt.tz_convert('Asia/Seoul').dt.strftime('%Y-%m-%d %H:%M:%S')\n",
|
|
"\n",
|
|
"cols = list(stts.columns)\n",
|
|
"cols.remove('datetime')\n",
|
|
"cols.remove('CLCT_UNIX_TM')\n",
|
|
"cols.insert(1,'datetime')\n",
|
|
"stts = stts[cols]\n",
|
|
"stts"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 67,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"3079\n",
|
|
"3024\n",
|
|
"{9216, 11474, 9220, 11475, 11476, 14222, 9999, 14223, 14224, 14225, 14226, 8596, 11478, 14227, 14228, 8600, 6296, 8608, 8609, 1185, 8612, 8614, 8615, 8616, 18857, 18982, 18983, 18984, 3244, 3245, 3252, 8634, 8635, 8636, 8637, 18885, 18898, 18899, 18900, 11477, 18901, 18902, 18903, 18904, 18905, 18906, 18907, 18908, 18909, 18910, 18911, 18033, 18034, 18035, 18036, 14834, 18038, 18039, 18040, 18041, 18042, 18043, 14835, 9214, 9215}\n",
|
|
"{9217, 1188, 8581, 9036, 8621, 1165, 2066, 8598, 8599, 14742}\n",
|
|
"65\n",
|
|
"10\n",
|
|
"{8192, 8193, 8194, 8195, 8196, 8197, 8198, 8199, 8200, 8201, 8202, 8203, 8204, 8205, 8206, 8207, 8208, 8209, 8210, 8211, 8212, 8213, 8214, 8215, 8216, 8217, 8218, 8219, 8220, 8221, 8222, 8223, 8224, 8225, 8226, 8227, 8228, 8229, 8230, 8231, 8232, 8233, 8234, 8235, 8236, 8237, 8238, 8239, 8240, 8241, 8242, 8243, 8244, 8245, 8246, 8247, 8248, 8249, 8250, 8251, 8252, 8253, 8254, 8143, 8256, 8257, 8258, 8259, 8260, 8261, 8262, 8263, 8264, 8265, 8266, 8267, 8268, 8269, 8270, 8271, 8272, 8273, 8274, 8275, 8276, 8277, 8278, 8279, 8280, 8281, 8282, 8283, 8284, 8285, 8286, 8287, 8288, 8289, 8290, 8291, 8292, 8293, 8294, 8295, 8296, 8297, 8298, 8299, 8300, 8301, 8302, 8303, 8304, 8305, 8306, 8307, 8308, 8309, 8310, 8311, 8312, 8313, 8314, 8315, 8316, 8318, 8319, 8320, 8321, 8322, 8323, 8324, 8325, 8326, 8327, 8328, 8329, 8330, 8331, 8332, 8333, 8334, 8335, 8336, 8337, 8338, 8339, 8340, 8341, 8342, 8343, 8344, 8345, 8346, 8347, 8348, 8349, 8350, 8351, 8352, 8353, 8354, 8355, 8356, 8357, 8358, 8359, 8360, 8361, 8362, 8363, 8364, 8365, 8366, 8367, 8368, 8369, 8370, 8371, 8372, 8373, 8374, 8375, 8376, 8377, 8378, 8379, 8380, 8381, 8382, 8383, 8386, 8387, 8388, 8389, 8390, 8391, 8392, 8181, 8394, 8395, 8396, 8397, 8398, 8399, 8400, 8401, 8402, 8403, 8404, 8405, 8406, 8407, 8408, 8409, 8410, 8411, 8412, 8413, 8414, 8415, 8416, 8417, 8185, 8419, 8420, 8421, 8422, 8423, 8424, 8425, 8426, 8427, 8428, 8429, 8430, 8431, 8432, 8433, 8434, 8435, 8436, 8437, 8438, 8439, 8189, 8190, 8443, 8444, 8445, 8446, 8447, 8448, 8449, 8450, 8451, 8452, 8453, 8454, 8455, 8456, 8457, 8458, 8459, 8460, 8461, 8462, 8463, 8464, 8465, 8466, 8467, 8468, 8469, 8470, 8471, 8472, 8473, 8474, 8475, 8476, 8477, 8478, 8479, 8480, 8481, 8482, 8483, 8484, 8485, 8486, 8487, 8488, 8490, 8491, 8492, 8493, 8494, 8495, 8496, 8497, 8498, 8499, 8500, 8501, 8502, 8503, 8504, 8505, 8506, 8507, 8508, 8509, 8510, 8511, 8512, 8513, 8514, 8515, 8517, 8518, 8519, 8520, 8521, 8522, 8523, 8524, 8525, 8526, 8527, 8528, 8529, 8530, 8531, 8532, 8533, 8534, 8535, 8536, 8537, 8538, 8539, 8540, 8541, 8542, 8543, 8544, 8545, 8546, 8547, 8548, 8549, 8550, 8551, 8552, 8553, 8554, 8555, 8556, 8557, 8558, 8559, 8560, 8561, 8562, 8563, 8564, 8565, 8566, 8567, 8568, 8569, 8570, 8571, 8572, 8573, 8574, 8575, 8576, 8156, 8578, 8579, 8580, 8584, 8585, 8589, 8590, 8591, 8593, 8594, 8595, 8597, 8601, 8602, 8603, 8605, 8606, 8607, 8617, 8618, 8620, 8158, 8629, 8630, 8166, 8171, 9001, 9002, 9003, 9004, 9005, 9006, 9007, 9008, 9009, 9010, 9011, 9012, 9013, 9014, 9015, 9016, 9017, 9018, 9019, 9020, 9021, 9022, 9023, 9024, 9025, 9026, 9027, 9028, 9029, 9030, 9031, 9032, 9033, 9034, 9035, 9037, 9038, 9039, 9040, 9041, 9042, 9043, 9044, 9045, 9046, 9047, 9048, 9049, 9050, 9051, 9052, 9053, 9054, 9055, 9056, 9057, 9058, 9059, 9060, 9061, 9062, 9063, 9064, 9065, 9066, 9067, 9068, 9070, 9071, 9072, 9073, 9074, 9075, 9076, 9077, 9078, 9079, 9080, 9081, 9082, 9083, 9084, 9085, 9086, 9087, 9088, 9089, 9090, 9091, 9092, 9093, 9094, 9095, 9096, 9097, 9098, 9100, 9101, 9102, 9103, 9104, 9105, 9106, 9107, 9108, 9109, 9110, 9111, 9112, 9113, 9114, 9115, 9117, 9118, 9119, 9120, 9121, 9122, 9123, 9124, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 9201, 9202, 9203, 9204, 9205, 9206, 9207, 9208, 9209, 9210, 9211, 9212, 9213, 1013, 1014, 1015, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 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, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1186, 1187, 1189, 1192, 8188, 8141, 8191, 8151, 18037, 8183, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057, 2058, 2059, 2060, 2061, 2062, 18793, 18794, 18795, 18796, 18797, 18798, 18799, 18800, 18801, 18802, 18803, 18804, 18805, 18806, 18807, 18808, 18809, 18810, 18811, 18812, 18813, 18814, 18815, 18816, 18817, 18818, 18819, 18820, 18821, 18822, 18823, 18824, 18825, 18826, 18827, 18828, 18829, 18830, 18831, 18832, 18833, 18834, 18835, 18836, 18837, 18838, 18839, 18840, 18841, 18842, 18843, 18844, 18845, 18846, 18847, 18848, 18849, 18850, 18851, 18852, 18853, 18854, 18855, 18856, 18858, 18859, 18860, 18861, 18862, 18863, 18864, 18865, 18866, 18867, 18868, 18869, 18870, 18871, 18872, 18873, 18874, 18875, 18876, 18877, 18878, 18879, 18880, 18881, 18882, 18883, 18884, 18886, 18887, 18888, 18889, 18890, 18891, 18892, 18893, 18894, 18895, 18896, 18897, 18921, 18922, 18925, 18926, 18927, 18928, 18929, 18930, 18931, 18932, 18933, 18934, 18935, 18936, 18937, 18938, 18939, 18940, 18941, 18942, 18943, 18944, 18945, 18946, 18947, 18948, 18949, 18950, 18951, 18952, 18953, 18954, 18955, 18956, 18957, 18958, 18959, 18960, 18961, 18962, 18963, 18964, 18965, 18966, 18967, 18968, 18969, 18970, 18971, 18972, 18973, 18974, 18975, 18976, 18977, 18978, 18979, 18980, 18981, 8184, 11000, 11001, 11002, 11003, 11004, 11005, 11006, 11007, 11008, 11009, 11010, 11011, 11012, 11013, 11014, 11015, 11016, 11017, 11018, 11019, 11020, 11021, 11022, 11023, 11024, 11025, 3001, 3002, 3003, 3004, 3005, 3006, 3007, 3008, 3009, 3010, 3011, 3012, 3013, 3014, 3015, 3016, 3017, 3018, 3019, 3020, 3021, 3022, 3023, 3024, 3025, 3026, 3027, 3028, 3029, 3030, 3031, 3032, 3033, 3034, 3035, 3036, 3037, 3038, 3039, 3040, 3041, 3042, 3043, 3044, 3045, 3046, 3047, 3048, 3049, 3050, 3051, 3052, 3053, 3054, 3055, 3056, 3057, 3058, 3059, 3060, 3061, 3062, 3063, 3064, 3065, 3066, 3067, 3068, 3069, 3070, 3071, 3072, 3073, 3074, 3075, 3076, 3077, 3078, 3079, 3080, 3081, 3082, 3083, 3084, 3085, 3086, 3087, 3088, 3089, 3090, 3091, 3092, 3093, 3094, 3095, 3096, 3097, 3098, 3099, 3100, 3101, 3102, 3103, 3104, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112, 11305, 11306, 11307, 11308, 11309, 11310, 11311, 11312, 11313, 11314, 11315, 11316, 11317, 11318, 11319, 11320, 11321, 11322, 11323, 11324, 11325, 11326, 11327, 11328, 11329, 11330, 11331, 11332, 11333, 11334, 11335, 11336, 11337, 11338, 11339, 11340, 11341, 11342, 11343, 11344, 11345, 11346, 11347, 11348, 11349, 11350, 11351, 11352, 11353, 11354, 11355, 11356, 11357, 11358, 11359, 11360, 11361, 11362, 11363, 11364, 11365, 11366, 11367, 11368, 11369, 11370, 11371, 11372, 11373, 11374, 11375, 11376, 11377, 11378, 11379, 11380, 11381, 11382, 11383, 11384, 11385, 11386, 11387, 11388, 11389, 11390, 11391, 11392, 11393, 11394, 11395, 11396, 11397, 11398, 11399, 11400, 11401, 11402, 11403, 11404, 11405, 11406, 11407, 11408, 11409, 11410, 11411, 11412, 11413, 11414, 11415, 11416, 11417, 11418, 11419, 11420, 11421, 11422, 11423, 11424, 11425, 11426, 11427, 11428, 11429, 11430, 11431, 11432, 11433, 11434, 11435, 11436, 11437, 11438, 11439, 11440, 11441, 11442, 11443, 11444, 11445, 11446, 11447, 11448, 3257, 11449, 11450, 3260, 3261, 3262, 11451, 11453, 11454, 11452, 11455, 11456, 11457, 11458, 11459, 11460, 11461, 11462, 11463, 11464, 11465, 11466, 11467, 11468, 11469, 11470, 11471, 11472, 11473, 11985, 11986, 11987, 11988, 11989, 11990, 11991, 11992, 11993, 11994, 11995, 11996, 11997, 11998, 11999, 4001, 4002, 4003, 4004, 4005, 4006, 4007, 4008, 4009, 4010, 4011, 4012, 4013, 4014, 4015, 4016, 4017, 4018, 4019, 4020, 4021, 4022, 4023, 4024, 4025, 4026, 4027, 4028, 4029, 4030, 4031, 4032, 4033, 4034, 4035, 4036, 4037, 4038, 4039, 4040, 4041, 4042, 4043, 4044, 4045, 4046, 4047, 4048, 4049, 4050, 4051, 4052, 4053, 4054, 4055, 4056, 4057, 4058, 4059, 4060, 4061, 4062, 4063, 4064, 4065, 4066, 4067, 4068, 4069, 4070, 4071, 4072, 4073, 4074, 4075, 4076, 4077, 4078, 4079, 4080, 4081, 4082, 4083, 4084, 4085, 4086, 4087, 4088, 4089, 4090, 4091, 4092, 4093, 4094, 4095, 4096, 4097, 4098, 4099, 4100, 4101, 4102, 4103, 4104, 4105, 4106, 4107, 4108, 4109, 4110, 4111, 4112, 4113, 4114, 4115, 4116, 4117, 4118, 4119, 4120, 4121, 4128, 4130, 4131, 3263, 8176, 5001, 5002, 5003, 5004, 5005, 5006, 5007, 5008, 5009, 5010, 5011, 5012, 5013, 5014, 5015, 5016, 5017, 5018, 5019, 5020, 5021, 5022, 5023, 5024, 5025, 5026, 5027, 5028, 5029, 5030, 5031, 5032, 5033, 5034, 5035, 5036, 5037, 5038, 5039, 5040, 5041, 5042, 5043, 5044, 5045, 5046, 5047, 5048, 5049, 5050, 5051, 5052, 5053, 5054, 5055, 5056, 5057, 5058, 5059, 5060, 5061, 5062, 5063, 5064, 5065, 5066, 5067, 5068, 5069, 5070, 5071, 5072, 5073, 5074, 5075, 5076, 1009, 5077, 5078, 5079, 5080, 1010, 5081, 5082, 5083, 5084, 1011, 5085, 5086, 5087, 5088, 1012, 5089, 5090, 5091, 5092, 5093, 5094, 5095, 5096, 5097, 5098, 5099, 5100, 5101, 5102, 5103, 5104, 5105, 5106, 5107, 1016, 5108, 5109, 5110, 5111, 5112, 5113, 5114, 5115, 5116, 5117, 5118, 5119, 5120, 5121, 5122, 5123, 5124, 5125, 5126, 5127, 5128, 5129, 5130, 5131, 5132, 5133, 5134, 5135, 5136, 5137, 5138, 5139, 5140, 5141, 5142, 5143, 5144, 5145, 5146, 5147, 5148, 5149, 5150, 5151, 5152, 5153, 5154, 5155, 5156, 5157, 5158, 5159, 5160, 5161, 5162, 5163, 5164, 5165, 5166, 5167, 5168, 5169, 5170, 5171, 5172, 5173, 5174, 5175, 5176, 5177, 5178, 5179, 5180, 5181, 5182, 5183, 5184, 5185, 5186, 5187, 5188, 5189, 5190, 5191, 5192, 5193, 5194, 5195, 5196, 5197, 5198, 5199, 5200, 5201, 5202, 5203, 5204, 5205, 5206, 5207, 5208, 5209, 5210, 5212, 5213, 5214, 5215, 5216, 5217, 5218, 5219, 5220, 5221, 5222, 5223, 5224, 5225, 5226, 5227, 5228, 5229, 5230, 5231, 5232, 5233, 5234, 5235, 5236, 5237, 5238, 5239, 5240, 5241, 5242, 5243, 5244, 5245, 5246, 5247, 5248, 5249, 5250, 5251, 5252, 5253, 5254, 5255, 5256, 5257, 5258, 5259, 5260, 5261, 5262, 5263, 5264, 5265, 5266, 5267, 5268, 5269, 5270, 5271, 5272, 5273, 5274, 5275, 5276, 5277, 5278, 5279, 5280, 5281, 5282, 5283, 5284, 5285, 5286, 5287, 5288, 5289, 5290, 5291, 5292, 5293, 5294, 5295, 5296, 5297, 5298, 5299, 5300, 5301, 5302, 5303, 5304, 5305, 5306, 5307, 5308, 5309, 5310, 5311, 5312, 5313, 5314, 5315, 5316, 5317, 5318, 5319, 5320, 5321, 5322, 5323, 5324, 5325, 5326, 5328, 5329, 5330, 5331, 5332, 5333, 5334, 5335, 5336, 5337, 5338, 5339, 5340, 5341, 5342, 5343, 5344, 5345, 5346, 5347, 5348, 5349, 5350, 5351, 5352, 5353, 5354, 5355, 5356, 5357, 5358, 5359, 5360, 5361, 5362, 5363, 5364, 5365, 5366, 5367, 5368, 5369, 5370, 5371, 5372, 5373, 5374, 5375, 5376, 5377, 5378, 5379, 5380, 5381, 5382, 5383, 5384, 5385, 5386, 5387, 5388, 5389, 5390, 5391, 5392, 5393, 5394, 5395, 5396, 5397, 5398, 5399, 5400, 5401, 5402, 5403, 5404, 5405, 5406, 5407, 5408, 5409, 5410, 5411, 5412, 5413, 5414, 5415, 5416, 5417, 5418, 5419, 5420, 5421, 5422, 5423, 5424, 5425, 5426, 5427, 5428, 5429, 5430, 5433, 5434, 5435, 5436, 5437, 5438, 5439, 5440, 5441, 5442, 5443, 5444, 5445, 5446, 5447, 5448, 5449, 5451, 5452, 5453, 5454, 5455, 5456, 5457, 5458, 5459, 5460, 5461, 5462, 5463, 5464, 5465, 5466, 5467, 5468, 5469, 5470, 5471, 5472, 5473, 5474, 5475, 5476, 5477, 5478, 5479, 5480, 5481, 5482, 8186, 6021, 6022, 6023, 6024, 6025, 6026, 6027, 6028, 6029, 8187, 14193, 14194, 14195, 14196, 14197, 14198, 14199, 14200, 14201, 14202, 14203, 14177, 14178, 14179, 14180, 14181, 14182, 14183, 14184, 14185, 14186, 14187, 14188, 14189, 14190, 14191, 14192, 6001, 6002, 6003, 6004, 6005, 6006, 6007, 6008, 6009, 6010, 6011, 6012, 6013, 6014, 6015, 6016, 6017, 6018, 6019, 6020, 14204, 14205, 14206, 14207, 14208, 14209, 14210, 14211, 14212, 14213, 14214, 14215, 14216, 14217, 14218, 14219, 14220, 14221, 6030, 6031, 6032, 6033, 6034, 6035, 6036, 6037, 6038, 6039, 6040, 6041, 6042, 6043, 6044, 6045, 6046, 6047, 6048, 6049, 6050, 6051, 6052, 6053, 6054, 6055, 6056, 6057, 6058, 6059, 6060, 6061, 6062, 6063, 6064, 6065, 6066, 6067, 6068, 6069, 6070, 6071, 6072, 6073, 6074, 6075, 6076, 6077, 6078, 6079, 6080, 6081, 6082, 6083, 6084, 6085, 6086, 6087, 6088, 6089, 6090, 6091, 6092, 6093, 6094, 6095, 6096, 6097, 6098, 6099, 6100, 6101, 6102, 6103, 6104, 6105, 6106, 6107, 6108, 6109, 6110, 6111, 6112, 6113, 6114, 6115, 6116, 6117, 6118, 6119, 6120, 6121, 6122, 6123, 6124, 6125, 6126, 6127, 6128, 6129, 6130, 6131, 6132, 6133, 6134, 6135, 6136, 6137, 6138, 6139, 6140, 6141, 6142, 6143, 6144, 6145, 6146, 6147, 6148, 6149, 6150, 6151, 6152, 6153, 6154, 6155, 6156, 6157, 6158, 6159, 6160, 6161, 6162, 6163, 6164, 6165, 6166, 6167, 6168, 6169, 6170, 6171, 6172, 6173, 6174, 6175, 6176, 6177, 6178, 6180, 6181, 6182, 6183, 6184, 6185, 6186, 6187, 6188, 6189, 6190, 6191, 6192, 6193, 6194, 6195, 6196, 6197, 6198, 6199, 6200, 6201, 6202, 6203, 6204, 6205, 6206, 6207, 6208, 6209, 6210, 6211, 6212, 6213, 6214, 6215, 6216, 6217, 6218, 6219, 6220, 6221, 6222, 6223, 6224, 6225, 6226, 6227, 6228, 6229, 6230, 6231, 6232, 6233, 6234, 6235, 6236, 6237, 6238, 6239, 6240, 6241, 6242, 6243, 6244, 6245, 6246, 6247, 6248, 6249, 6250, 6251, 6252, 6253, 6254, 6255, 6256, 6257, 6258, 6259, 6260, 6261, 6262, 6263, 6265, 6266, 6268, 6269, 6270, 6271, 6272, 6273, 6274, 6275, 6276, 6277, 6278, 6279, 6280, 6281, 6282, 6283, 6284, 6285, 6286, 6287, 6288, 6289, 6290, 6292, 6294, 6295, 6297, 6298, 6299, 6300, 6301, 6302, 6303, 6304, 6307, 6311, 6312, 6317, 6318, 6319, 14561, 14562, 14563, 14564, 14565, 14566, 14567, 14568, 14569, 14570, 14571, 14572, 14573, 14574, 14575, 14576, 14577, 14578, 14579, 14580, 14581, 14582, 14583, 14584, 14585, 14586, 14587, 14588, 14589, 14590, 14591, 14592, 14593, 14594, 14595, 14596, 14597, 14598, 14599, 14600, 14601, 14602, 14603, 14604, 14605, 14606, 14607, 14608, 14609, 14610, 14611, 14612, 14613, 14614, 14615, 14616, 14617, 14618, 14619, 14620, 14621, 14622, 14623, 14624, 14625, 14626, 14627, 14628, 14629, 14630, 14631, 14632, 14633, 14634, 14635, 14636, 14637, 14638, 14639, 14640, 14641, 14642, 14643, 14644, 14645, 14665, 14666, 14667, 14668, 14669, 14670, 14671, 14672, 14673, 14674, 14675, 14676, 14677, 14678, 14679, 14680, 14681, 14682, 14683, 14684, 14685, 14686, 14687, 14688, 14689, 14690, 14691, 14692, 14693, 14694, 14695, 14696, 14697, 14698, 14699, 14700, 14701, 14702, 14703, 14704, 14705, 14706, 14707, 14708, 14709, 14710, 14711, 14712, 14713, 14714, 14715, 14716, 14717, 14718, 14719, 14720, 14721, 14722, 14723, 14724, 14725, 14726, 14727, 14728, 14729, 14730, 14731, 14732, 14733, 14734, 14735, 14736, 14737, 14738, 14739, 14740, 14741, 14743, 14744, 14745, 14746, 14747, 14748, 14749, 14750, 14751, 14752, 14753, 14754, 14755, 14756, 14757, 14758, 14759, 14760, 14761, 14762, 14763, 14764, 14765, 14766, 14767, 14768, 14769, 14770, 14771, 14772, 14773, 14774, 14775, 14776, 14777, 14778, 14779, 14780, 14781, 14782, 14783, 14784, 14785, 14786, 14787, 14788, 14789, 14790, 14791, 14792, 14793, 14794, 14795, 14796, 14797, 14798, 14799, 14800, 14801, 14802, 14803, 14804, 14805, 14806, 14807, 14808, 14809, 14810, 14811, 14812, 14813, 14814, 14815, 14816, 14817, 14818, 14819, 14820, 14821, 14822, 14823, 14824, 14825, 14826, 14827, 14828, 14829, 14830, 14831, 14832, 14833, 7001, 7002, 7003, 7004, 7005, 7006, 7007, 7008, 7009, 7010, 7011, 7012, 7013, 7014, 7015, 7016, 7017, 7018, 7019, 7020, 7021, 7022, 7023, 7024, 7025, 7026, 7027, 7028, 7029, 7030, 7031, 7032, 7033, 7034, 7035, 7036, 7037, 7038, 7039, 7040, 7041, 7042, 7043, 7044, 7045, 7046, 7047, 7048, 7049, 7050, 7051, 7052, 7053, 7054, 7055, 7056, 7057, 7058, 7059, 7060, 7061, 7062, 7063, 7064, 7065, 7066, 7067, 7068, 7069, 7070, 7071, 7072, 7073, 7074, 7075, 7076, 7077, 7078, 7079, 7080, 7081, 7082, 7083, 7084, 7085, 7086, 7087, 7088, 7089, 7090, 7091, 7092, 7093, 7094, 7095, 7096, 7097, 7098, 7099, 7100, 7101, 7102, 7103, 7104, 7105, 7106, 7107, 7108, 7109, 7110, 7111, 7112, 7113, 7114, 7115, 7116, 7117, 7118, 7119, 7120, 7121, 7122, 7123, 7124, 7125, 7126, 7127, 7128, 7129, 7130, 7131, 7132, 7133, 7134, 7135, 7136, 7137, 7138, 7139, 7140, 7141, 7142, 7143, 7144, 7145, 7146, 7147, 7148, 7149, 7150, 7151, 7152, 7153, 7154, 7155, 7156, 7157, 7158, 7159, 7160, 7161, 7162, 7163, 7164, 7165, 7166, 7167, 7168, 7169, 7170, 7171, 7172, 7173, 7174, 7175, 7176, 7177, 7178, 7179, 7180, 7181, 7182, 7183, 7184, 7185, 7186, 7187, 7188, 7189, 7190, 7191, 7192, 7193, 7194, 7195, 7196, 7197, 7198, 7199, 7200, 7201, 7202, 7203, 7204, 7205, 7206, 7207, 7208, 7209, 7210, 7211, 7212, 7213, 7214, 8106, 8111, 3113, 3114, 3115, 3116, 3117, 3118, 3119, 3120, 3121, 3122, 3123, 3124, 3125, 3126, 3127, 3128, 3129, 3130, 3131, 3132, 8116, 3133, 3134, 3135, 3136, 3137, 3138, 3139, 3140, 3141, 3142, 3143, 3144, 3145, 3146, 3147, 3148, 3149, 3150, 3151, 3152, 3153, 3154, 3155, 3156, 3157, 3158, 3159, 3160, 8045, 3161, 3162, 3163, 3164, 3165, 8050, 3166, 3167, 3168, 3169, 3170, 8055, 3171, 3172, 3173, 3174, 3175, 3176, 8061, 3177, 3178, 3179, 3180, 3181, 8066, 3182, 3183, 3184, 3185, 3186, 8071, 3187, 3188, 3190, 3191, 8076, 3192, 3193, 3194, 3195, 3196, 8081, 3197, 3199, 3200, 3201, 8086, 3202, 3203, 3204, 3205, 3206, 8091, 3207, 3208, 3209, 3210, 3211, 8096, 3212, 3213, 3214, 3215, 3216, 8101, 3217, 3218, 8001, 8002, 8003, 3219, 8004, 8005, 8006, 8007, 8008, 8009, 8010, 8011, 8012, 3221, 8013, 8014, 8015, 8016, 3222, 8017, 8018, 8019, 8020, 3223, 8021, 8022, 8023, 8024, 3224, 8025, 8026, 8027, 8028, 3225, 8029, 8030, 8031, 8032, 3226, 8033, 8034, 8035, 8036, 3227, 8037, 8038, 8039, 8040, 3228, 8041, 8042, 8043, 8044, 3229, 8046, 8047, 8048, 8049, 3230, 8051, 8052, 8053, 8054, 3231, 8056, 8057, 8058, 8059, 8060, 3232, 8062, 8063, 8064, 8065, 3233, 8067, 8068, 8069, 8070, 3234, 8072, 8073, 8074, 8075, 3235, 8077, 8078, 8079, 8080, 3236, 8082, 8083, 8084, 8085, 3237, 8087, 8088, 8089, 8090, 3238, 8092, 8093, 8094, 8095, 3239, 8097, 8098, 8099, 8100, 3240, 8102, 8103, 8104, 8105, 3241, 8107, 8108, 8109, 8110, 3242, 8112, 8113, 8114, 8115, 3243, 8117, 8118, 8119, 8120, 8121, 8122, 8123, 8124, 8125, 8126, 8127, 8128, 8129, 8130, 3246, 8132, 8131, 8134, 8135, 3247, 8137, 8138, 8139, 8140, 3248, 8142, 8133, 8144, 8145, 8146, 8147, 8148, 8149, 8150, 3250, 8152, 8153, 8154, 8155, 3251, 8157, 8136, 8159, 8160, 8161, 8162, 8163, 8164, 8165, 3253, 8167, 8168, 8169, 8170, 3254, 8172, 8173, 8174, 8175, 3255, 8177, 8178, 8179, 8180, 3256, 8182}\n",
|
|
"3014\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"stts.SPOT_INTS_ID.unique()\n",
|
|
"ctrr = pd.read_csv('SOITDSGNLCTRR.csv')\n",
|
|
"ints_stts = set(stts.SPOT_INTS_ID.unique())\n",
|
|
"ints_ctrr = set(ctrr.SPOT_INTS_ID.unique())\n",
|
|
"print(len(ints_stts))\n",
|
|
"print(len(ints_ctrr))\n",
|
|
"print(ints_stts - ints_ctrr)\n",
|
|
"print(ints_ctrr - ints_stts)\n",
|
|
"print(len(ints_stts - ints_ctrr))\n",
|
|
"print(len(ints_ctrr - ints_stts))\n",
|
|
"print(ints_stts.intersection(ints_ctrr))\n",
|
|
"print(len(ints_stts.intersection(ints_ctrr)))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 72,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[0, 1, 3, 5, 6, 7, 8, 17, 18]\n",
|
|
"[0, 1, 2, 3, 4, 10, 17, 18]\n"
|
|
]
|
|
},
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"{0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 17, 18}"
|
|
]
|
|
},
|
|
"execution_count": 72,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"print(sorted(list(stts.A_RING_MVMT_NO.unique())))\n",
|
|
"print(sorted(list(stts.B_RING_MVMT_NO.unique())))\n",
|
|
"set(stts.A_RING_MVMT_NO.unique()).union(set(stts.B_RING_MVMT_NO.unique()))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 57,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"['d', 'b', 'c']"
|
|
]
|
|
},
|
|
"execution_count": 57,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"A = ['a','b','c']\n",
|
|
"A.insert(1,'d')\n",
|
|
"A.remove('a')\n",
|
|
"A"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 76,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"array([ 0, 40, 35, 63, 70, 39, 31, 34, 32, 16, 135, 145, 150,\n",
|
|
" 140, 130, 38, 36, 37, 50, 55, 45, 44, 48, 52, 54, 51,\n",
|
|
" 42, 27, 29, 25, 21, 22, 23, 28, 90, 92, 79, 75, 71,\n",
|
|
" 83, 87, 91, 59, 30, 20, 19, 33, 17, 15, 43, 41, 18,\n",
|
|
" 26, 24], dtype=int64)"
|
|
]
|
|
},
|
|
"execution_count": 76,
|
|
"metadata": {},
|
|
"output_type": "execute_result"
|
|
}
|
|
],
|
|
"source": [
|
|
"soitdtodcnfg = pd.read_csv(\"soitdtodcnfg.csv\")\n",
|
|
"# soitdintsphasinfo = pd.read_csv(\"soitdintsphasinfo.csv\")\n",
|
|
"soitdtodcnfg.A_RING_1_PHAS_HR.unique()\n",
|
|
"soitdintsphasinfo = pd.read_csv(\"soitdintsphasinfo.csv\")\n",
|
|
"SOITSINTSSGNLCNFGINFO"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "rts",
|
|
"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.8.10"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|