{ "cells": [ { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import os, sys, copy, argparse, json, pickle\n", "import sumolib, traci\n", "from tqdm import tqdm\n", "from datetime import datetime\n", "path_root = os.path.dirname(os.path.dirname(os.path.abspath('.')))\n", "path_scr = os.path.join(path_root, 'scripts')\n", "sys.path.append(path_scr)\n", "from preprocess_daily import DailyPreprocessor\n", "# from generate_signals import SignalGenerator" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "self = DailyPreprocessor(config_name = 'test_0731')" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1. 데이터를 로드합니다.\n", "1-1. 네트워크가 로드되었습니다.\n", "1-2. 테이블들이 로드되었습니다.\n", "1-5. 테이블을 표준화했습니다.\n", "1-6. 주요 객체 (리스트, 딕셔너리)들을 저장했습니다.\n" ] } ], "source": [ "# 1. 데이터 불러오기\n", "self.load_data()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2-1. 매칭 테이블들을 생성했습니다.\n" ] } ], "source": [ "self.get_matches()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | inter_no | \n", "phas_A | \n", "phas_B | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "1 | \n", "5 | \n", "2 | \n", "
1 | \n", "436 | \n", "2 | \n", "2 | \n", "8 | \n", "3 | \n", "
2 | \n", "436 | \n", "3 | \n", "3 | \n", "7 | \n", "4 | \n", "
3 | \n", "436 | \n", "4 | \n", "4 | \n", "6 | \n", "1 | \n", "
4 | \n", "437 | \n", "1 | \n", "1 | \n", "6 | \n", "2 | \n", "
5 | \n", "437 | \n", "2 | \n", "2 | \n", "5 | \n", "1 | \n", "
6 | \n", "437 | \n", "3 | \n", "3 | \n", "8 | \n", "3 | \n", "
7 | \n", "437 | \n", "4 | \n", "4 | \n", "7 | \n", "4 | \n", "
8 | \n", "438 | \n", "1 | \n", "1 | \n", "6 | \n", "2 | \n", "
9 | \n", "438 | \n", "2 | \n", "2 | \n", "5 | \n", "1 | \n", "
10 | \n", "438 | \n", "3 | \n", "3 | \n", "8 | \n", "3 | \n", "
11 | \n", "438 | \n", "4 | \n", "4 | \n", "7 | \n", "4 | \n", "
12 | \n", "442 | \n", "1 | \n", "1 | \n", "6 | \n", "1 | \n", "
13 | \n", "442 | \n", "2 | \n", "2 | \n", "6 | \n", "2 | \n", "
14 | \n", "442 | \n", "3 | \n", "3 | \n", "5 | \n", "2 | \n", "
15 | \n", "442 | \n", "4 | \n", "4 | \n", "7 | \n", "4 | \n", "
16 | \n", "442 | \n", "5 | \n", "5 | \n", "8 | \n", "3 | \n", "
17 | \n", "442 | \n", "6 | \n", "6 | \n", "8 | \n", "3 | \n", "
18 | \n", "443 | \n", "1 | \n", "1 | \n", "6 | \n", "2 | \n", "
19 | \n", "443 | \n", "2 | \n", "2 | \n", "5 | \n", "2 | \n", "
20 | \n", "443 | \n", "3 | \n", "3 | \n", "7 | \n", "18 | \n", "
21 | \n", "455 | \n", "1 | \n", "1 | \n", "6 | \n", "2 | \n", "
22 | \n", "456 | \n", "1 | \n", "1 | \n", "5 | \n", "2 | \n", "
23 | \n", "456 | \n", "2 | \n", "2 | \n", "6 | \n", "2 | \n", "
24 | \n", "456 | \n", "3 | \n", "3 | \n", "7 | \n", "7 | \n", "
25 | \n", "456 | \n", "4 | \n", "4 | \n", "17 | \n", "17 | \n", "
26 | \n", "457 | \n", "1 | \n", "1 | \n", "6 | \n", "2 | \n", "
27 | \n", "457 | \n", "2 | \n", "2 | \n", "5 | \n", "1 | \n", "
28 | \n", "457 | \n", "3 | \n", "3 | \n", "17 | \n", "17 | \n", "
29 | \n", "457 | \n", "4 | \n", "4 | \n", "8 | \n", "3 | \n", "
30 | \n", "457 | \n", "5 | \n", "5 | \n", "7 | \n", "4 | \n", "
31 | \n", "458 | \n", "1 | \n", "1 | \n", "8 | \n", "4 | \n", "
32 | \n", "458 | \n", "2 | \n", "2 | \n", "17 | \n", "17 | \n", "
\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "
---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "
0 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "
1 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "
1 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "
2 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
30 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "
31 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "
31 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "
32 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "
32 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "
66 rows × 4 columns
\n", "\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "inc_dire | \n", "out_dire | \n", "
---|---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "서 | \n", "북 | \n", "
1 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "서 | \n", "동 | \n", "
2 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "
3 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "남 | \n", "서 | \n", "
4 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "북 | \n", "동 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
61 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "
62 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "
63 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "
64 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "NaN | \n", "NaN | \n", "
65 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "NaN | \n", "NaN | \n", "
66 rows × 6 columns
\n", "\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "inc_dire | \n", "out_dire | \n", "inc_angle | \n", "out_angle | \n", "
---|---|---|---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "서 | \n", "북 | \n", "262 | \n", "358 | \n", "
1 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "서 | \n", "동 | \n", "262 | \n", "074 | \n", "
2 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "174 | \n", "355 | \n", "
3 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "남 | \n", "서 | \n", "172 | \n", "263 | \n", "
4 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "북 | \n", "동 | \n", "356 | \n", "074 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
61 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "344 | \n", "164 | \n", "
62 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "073 | \n", "250 | \n", "
63 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "249 | \n", "072 | \n", "
64 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
65 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
66 rows × 8 columns
\n", "\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "inc_dire | \n", "out_dire | \n", "inc_angle | \n", "out_angle | \n", "inc_edge_id | \n", "out_edge_id | \n", "node_id | \n", "node_type | \n", "turn_type | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "서 | \n", "북 | \n", "262 | \n", "358 | \n", "517505 | \n", "517507 | \n", "109836 | \n", "normal | \n", "left | \n", "
1 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "서 | \n", "동 | \n", "262 | \n", "074 | \n", "517505 | \n", "517004 | \n", "109836 | \n", "normal | \n", "straight | \n", "
2 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "174 | \n", "355 | \n", "517509 | \n", "517507 | \n", "109836 | \n", "normal | \n", "straight | \n", "
3 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "남 | \n", "서 | \n", "172 | \n", "263 | \n", "517509 | \n", "517504 | \n", "109836 | \n", "normal | \n", "left | \n", "
4 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "북 | \n", "동 | \n", "356 | \n", "074 | \n", "517002 | \n", "517004 | \n", "109836 | \n", "normal | \n", "left | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
61 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "344 | \n", "164 | \n", "513158 | \n", "513153 | \n", "106234 | \n", "normal | \n", "straight | \n", "
62 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "073 | \n", "250 | \n", "513193 | \n", "513188 | \n", "106238 | \n", "normal | \n", "straight | \n", "
63 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "249 | \n", "072 | \n", "513189 | \n", "513192 | \n", "106238 | \n", "normal | \n", "straight | \n", "
64 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
65 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
66 rows × 13 columns
\n", "\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "inc_dire | \n", "out_dire | \n", "inc_angle | \n", "out_angle | \n", "inc_edge_id | \n", "out_edge_id | \n", "node_id | \n", "node_type | \n", "turn_type | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "서 | \n", "북 | \n", "262 | \n", "358 | \n", "517505 | \n", "517507 | \n", "109836 | \n", "normal | \n", "left | \n", "
1 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "서 | \n", "동 | \n", "262 | \n", "074 | \n", "517505 | \n", "517004 | \n", "109836 | \n", "normal | \n", "straight | \n", "
2 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "174 | \n", "355 | \n", "517509 | \n", "517507 | \n", "109836 | \n", "normal | \n", "straight | \n", "
3 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "남 | \n", "서 | \n", "172 | \n", "263 | \n", "517509 | \n", "517504 | \n", "109836 | \n", "normal | \n", "left | \n", "
4 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "북 | \n", "동 | \n", "356 | \n", "074 | \n", "517002 | \n", "517004 | \n", "109836 | \n", "normal | \n", "left | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
61 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "344 | \n", "164 | \n", "513158 | \n", "513153 | \n", "106234 | \n", "normal | \n", "straight | \n", "
62 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "073 | \n", "250 | \n", "513193 | \n", "513188 | \n", "106238 | \n", "normal | \n", "straight | \n", "
63 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "249 | \n", "072 | \n", "513189 | \n", "513192 | \n", "106238 | \n", "normal | \n", "straight | \n", "
64 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
65 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
66 rows × 13 columns
\n", "\n", " | inter_no | \n", "phase_no | \n", "ring_type | \n", "move_no | \n", "inc_dire | \n", "out_dire | \n", "inc_angle | \n", "out_angle | \n", "inc_edge_id | \n", "out_edge_id | \n", "node_id | \n", "node_type | \n", "turn_type | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "436 | \n", "1 | \n", "A | \n", "5 | \n", "서 | \n", "북 | \n", "262 | \n", "358 | \n", "517505 | \n", "517507 | \n", "109836 | \n", "normal | \n", "left | \n", "
1 | \n", "436 | \n", "1 | \n", "B | \n", "2 | \n", "서 | \n", "동 | \n", "262 | \n", "074 | \n", "517505 | \n", "517004 | \n", "109836 | \n", "normal | \n", "straight | \n", "
2 | \n", "436 | \n", "2 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "174 | \n", "355 | \n", "517509 | \n", "517507 | \n", "109836 | \n", "normal | \n", "straight | \n", "
3 | \n", "436 | \n", "2 | \n", "B | \n", "3 | \n", "남 | \n", "서 | \n", "172 | \n", "263 | \n", "517509 | \n", "517504 | \n", "109836 | \n", "normal | \n", "left | \n", "
4 | \n", "436 | \n", "3 | \n", "A | \n", "7 | \n", "북 | \n", "동 | \n", "356 | \n", "074 | \n", "517002 | \n", "517004 | \n", "109836 | \n", "normal | \n", "left | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
111 | \n", "457 | \n", "5 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "344 | \n", "164 | \n", "None | \n", "None | \n", "109297 | \n", "u_turn | \n", "straight | \n", "
112 | \n", "458 | \n", "1 | \n", "A | \n", "8 | \n", "남 | \n", "북 | \n", "073 | \n", "250 | \n", "513193 | \n", "513188 | \n", "106238 | \n", "normal | \n", "straight | \n", "
113 | \n", "458 | \n", "1 | \n", "B | \n", "4 | \n", "북 | \n", "남 | \n", "249 | \n", "072 | \n", "513189 | \n", "513192 | \n", "106238 | \n", "normal | \n", "straight | \n", "
114 | \n", "458 | \n", "2 | \n", "A | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
115 | \n", "458 | \n", "2 | \n", "B | \n", "17 | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "106238 | \n", "normal | \n", "NaN | \n", "
116 rows × 13 columns
\n", "