{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import os, sys, json, argparse, 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 generate_signals import SignalGenerator" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "self = SignalGenerator(config_name='test_0731',\n", " month=7,\n", " day=31,\n", " hour=9,\n", " minute=5)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1. 데이터를 준비합니다.\n", "1-1. 네트워크가 로드되었습니다.\n", "1-2. 테이블들이 로드되었습니다.\n", "1-5. 필요한 보조 객체들이 모두 준비되었습니다.\n", "2. 신호이력 테이블을 변환합니다.\n" ] } ], "source": [ "self.prepare_data()\n", "self.process_history()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3. 이동류정보 테이블을 변환합니다.\n", "4. 통합 테이블을 생성합니다.\n", "5. 신호를 생성합니다.\n" ] } ], "source": [ "self.process_movement()\n", "self.make_histids()\n", "self.get_signals()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|---|---|
0 | \n", "1722383926 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "
1 | \n", "1722383926 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "
2 | \n", "1722383926 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
3 | \n", "1722383926 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "
4 | \n", "1722383926 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "1722385043 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11096 | \n", "1722385043 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11097 | \n", "1722385043 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "
11098 | \n", "1722385043 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "
11099 | \n", "1722385043 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "17 | \n", "17 | \n", "
11100 rows × 7 columns
\n", "\n", " | inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "start_unix | \n", "
---|---|---|---|---|---|---|---|
6 | \n", "455 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722383976 | \n", "
7 | \n", "456 | \n", "2 | \n", "2 | \n", "0 | \n", "6 | \n", "2 | \n", "1722383967 | \n", "
1 | \n", "437 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384007 | \n", "
7 | \n", "456 | \n", "3 | \n", "3 | \n", "0 | \n", "7 | \n", "-1 | \n", "1722383967 | \n", "
7 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "1722383967 | \n", "
6 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "1722383976 | \n", "
8 | \n", "457 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384053 | \n", "
7 | \n", "456 | \n", "1 | \n", "1 | \n", "0 | \n", "5 | \n", "2 | \n", "1722383967 | \n", "
1 | \n", "437 | \n", "2 | \n", "2 | \n", "0 | \n", "5 | \n", "1 | \n", "1722384007 | \n", "
3 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "1722384098 | \n", "
8 | \n", "457 | \n", "2 | \n", "2 | \n", "0 | \n", "5 | \n", "1 | \n", "1722384053 | \n", "
4 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384102 | \n", "
1 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "1722384007 | \n", "
8 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "1722384053 | \n", "
3 | \n", "442 | \n", "2 | \n", "2 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384098 | \n", "
1 | \n", "437 | \n", "4 | \n", "4 | \n", "0 | \n", "7 | \n", "4 | \n", "1722384007 | \n", "
3 | \n", "442 | \n", "3 | \n", "3 | \n", "0 | \n", "5 | \n", "2 | \n", "1722384098 | \n", "
8 | \n", "457 | \n", "4 | \n", "4 | \n", "0 | \n", "8 | \n", "3 | \n", "1722384053 | \n", "
3 | \n", "442 | \n", "4 | \n", "4 | \n", "0 | \n", "7 | \n", "4 | \n", "1722384098 | \n", "
8 | \n", "457 | \n", "5 | \n", "5 | \n", "0 | \n", "7 | \n", "4 | \n", "1722384053 | \n", "
1 | \n", "437 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384207 | \n", "
4 | \n", "443 | \n", "2 | \n", "2 | \n", "0 | \n", "5 | \n", "2 | \n", "1722384102 | \n", "
8 | \n", "457 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "1722384232 | \n", "
0 | \n", "436 | \n", "1 | \n", "1 | \n", "0 | \n", "5 | \n", "2 | \n", "1722384236 | \n", "
3 | \n", "442 | \n", "5 | \n", "5 | \n", "0 | \n", "8 | \n", "3 | \n", "1722384098 | \n", "
4 | \n", "443 | \n", "3 | \n", "3 | \n", "0 | \n", "7 | \n", "18 | \n", "1722384102 | \n", "
8 | \n", "457 | \n", "2 | \n", "2 | \n", "0 | \n", "5 | \n", "1 | \n", "1722384232 | \n", "
1 | \n", "437 | \n", "2 | \n", "2 | \n", "0 | \n", "5 | \n", "1 | \n", "1722384207 | \n", "
3 | \n", "442 | \n", "6 | \n", "6 | \n", "0 | \n", "8 | \n", "3 | \n", "1722384098 | \n", "
0 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "1722384236 | \n", "
3 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "1722384297 | \n", "
8 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "1722384232 | \n", "
\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|---|---|
0 | \n", "1722416326 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "
1 | \n", "1722416326 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "
2 | \n", "1722416326 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
3 | \n", "1722416326 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "
4 | \n", "1722416326 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "1722417443 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11096 | \n", "1722417443 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11097 | \n", "1722417443 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "
11098 | \n", "1722417443 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "
11099 | \n", "1722417443 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "17 | \n", "17 | \n", "
11100 rows × 7 columns
\n", "\n", " | PHASE_DT | \n", "CRSRD_ID | \n", "RINGA_PHASE | \n", "RINGA_FLOW | \n", "RINGB_PHASE | \n", "RINGB_FLOW | \n", "MAP_MODE | \n", "FRST_REG_DT | \n", "
---|---|---|---|---|---|---|---|---|
0 | \n", "2024-07-31 08:58:46 | \n", "436 | \n", "2 | \n", "8 | \n", "2 | \n", "3 | \n", "0 | \n", "2024-07-31 08:58:46.799000 | \n", "
1 | \n", "2024-07-31 08:58:46 | \n", "437 | \n", "3 | \n", "8 | \n", "3 | \n", "3 | \n", "0 | \n", "2024-07-31 08:58:46.799000 | \n", "
2 | \n", "2024-07-31 08:58:46 | \n", "438 | \n", "1 | \n", "6 | \n", "1 | \n", "2 | \n", "0 | \n", "2024-07-31 08:58:46.799000 | \n", "
3 | \n", "2024-07-31 08:58:46 | \n", "442 | \n", "1 | \n", "6 | \n", "1 | \n", "1 | \n", "0 | \n", "2024-07-31 08:58:46.799000 | \n", "
4 | \n", "2024-07-31 08:58:46 | \n", "443 | \n", "1 | \n", "6 | \n", "1 | \n", "2 | \n", "0 | \n", "2024-07-31 08:58:46.799000 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "2024-07-31 09:17:23 | \n", "444 | \n", "4 | \n", "7 | \n", "4 | \n", "4 | \n", "0 | \n", "2024-07-31 09:17:23.051000 | \n", "
11096 | \n", "2024-07-31 09:17:23 | \n", "455 | \n", "2 | \n", "1 | \n", "2 | \n", "1 | \n", "0 | \n", "2024-07-31 09:17:23.051000 | \n", "
11097 | \n", "2024-07-31 09:17:23 | \n", "456 | \n", "4 | \n", "17 | \n", "4 | \n", "1 | \n", "0 | \n", "2024-07-31 09:17:23.051000 | \n", "
11098 | \n", "2024-07-31 09:17:23 | \n", "457 | \n", "3 | \n", "17 | \n", "3 | \n", "17 | \n", "0 | \n", "2024-07-31 09:17:23.051000 | \n", "
11099 | \n", "2024-07-31 09:17:23 | \n", "458 | \n", "2 | \n", "17 | \n", "2 | \n", "17 | \n", "0 | \n", "2024-07-31 09:17:23.051000 | \n", "
11100 rows × 8 columns
\n", "\n", " | PHASE_DT | \n", "CRSRD_ID | \n", "RINGA_PHASE | \n", "RINGB_PHASE | \n", "MAP_MODE | \n", "
---|---|---|---|---|---|
0 | \n", "2024-07-31 08:58:46 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "
1 | \n", "2024-07-31 08:58:46 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "
2 | \n", "2024-07-31 08:58:46 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "
3 | \n", "2024-07-31 08:58:46 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "
4 | \n", "2024-07-31 08:58:46 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "2024-07-31 09:17:23 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "
11096 | \n", "2024-07-31 09:17:23 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "
11097 | \n", "2024-07-31 09:17:23 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "
11098 | \n", "2024-07-31 09:17:23 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "
11099 | \n", "2024-07-31 09:17:23 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "
11100 rows × 5 columns
\n", "\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "
---|---|---|---|---|---|
0 | \n", "2024-07-31 08:58:46 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "
1 | \n", "2024-07-31 08:58:46 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "
2 | \n", "2024-07-31 08:58:46 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "
3 | \n", "2024-07-31 08:58:46 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "
4 | \n", "2024-07-31 08:58:46 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "2024-07-31 09:17:23 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "
11096 | \n", "2024-07-31 09:17:23 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "
11097 | \n", "2024-07-31 09:17:23 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "
11098 | \n", "2024-07-31 09:17:23 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "
11099 | \n", "2024-07-31 09:17:23 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "
11100 rows × 5 columns
\n", "\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|---|---|
0 | \n", "2024-07-31 08:58:46 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "
1 | \n", "2024-07-31 08:58:46 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "
2 | \n", "2024-07-31 08:58:46 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
3 | \n", "2024-07-31 08:58:46 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "
4 | \n", "2024-07-31 08:58:46 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "2024-07-31 09:17:23 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11096 | \n", "2024-07-31 09:17:23 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11097 | \n", "2024-07-31 09:17:23 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "
11098 | \n", "2024-07-31 09:17:23 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "
11099 | \n", "2024-07-31 09:17:23 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "17 | \n", "17 | \n", "
11100 rows × 7 columns
\n", "\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|---|---|
0 | \n", "1722416326 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "
1 | \n", "1722416326 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "
2 | \n", "1722416326 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
3 | \n", "1722416326 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "
4 | \n", "1722416326 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "1722417443 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11096 | \n", "1722417443 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11097 | \n", "1722417443 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "
11098 | \n", "1722417443 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "
11099 | \n", "1722417443 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "17 | \n", "17 | \n", "
11100 rows × 7 columns
\n", "\n", " | start_unix | \n", "inter_no | \n", "phas_A | \n", "phas_B | \n", "STOS_NO | \n", "move_A | \n", "move_B | \n", "
---|---|---|---|---|---|---|---|
0 | \n", "1722416326 | \n", "436 | \n", "2 | \n", "2 | \n", "0 | \n", "8 | \n", "3 | \n", "
1 | \n", "1722416326 | \n", "437 | \n", "3 | \n", "3 | \n", "0 | \n", "8 | \n", "3 | \n", "
2 | \n", "1722416326 | \n", "438 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
3 | \n", "1722416326 | \n", "442 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "1 | \n", "
4 | \n", "1722416326 | \n", "443 | \n", "1 | \n", "1 | \n", "0 | \n", "6 | \n", "2 | \n", "
... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
11095 | \n", "1722417443 | \n", "444 | \n", "4 | \n", "4 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11096 | \n", "1722417443 | \n", "455 | \n", "2 | \n", "2 | \n", "0 | \n", "-1 | \n", "-1 | \n", "
11097 | \n", "1722417443 | \n", "456 | \n", "4 | \n", "4 | \n", "0 | \n", "17 | \n", "-1 | \n", "
11098 | \n", "1722417443 | \n", "457 | \n", "3 | \n", "3 | \n", "0 | \n", "17 | \n", "17 | \n", "
11099 | \n", "1722417443 | \n", "458 | \n", "2 | \n", "2 | \n", "0 | \n", "17 | \n", "17 | \n", "
11100 rows × 7 columns
\n", "