-
Notifications
You must be signed in to change notification settings - Fork 0
/
slide_4_route_with_stops_preprocessed.py
40 lines (30 loc) · 1.68 KB
/
slide_4_route_with_stops_preprocessed.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from pathlib import Path
import pandas as pd
from mostra.data_structure import COLUMN_NAMES
from mostra.main import TransportDataExplorer
from mostra.paths import get_data_path
from mostra.preprocessing import aggregate_schedule_items
import warnings
warnings.filterwarnings('ignore')
def preprocess_schedule_data_and_show():
"""
Rus
Скрипт сначала агрегирует прогнозные времена прибытия по расписанию по
каждой остановке и затем строит графики для каждого маршрута
Нотация генерируемых изображений:
- ось X: названия остановок, расположенные в порядке следования
транспорта по маршарута
- ось Y: предсказанное время повяления транспорта на остановке
- цвет: обозначает были ли прогнозные значения приезда транспорта
получены при помощи телеметрии или это данные расписания.
"""
# Load data
df = pd.read_csv(Path(get_data_path(), 'pred_data.csv'), names=COLUMN_NAMES)
# Aggregate and save for further steps
final_df = aggregate_schedule_items(df)
final_df.to_csv(Path(get_data_path(), 'pred_data_preprocessed.csv'), index=False)
# And generate visualizations per routes
explorer = TransportDataExplorer(final_df)
explorer.prepare_plots_stops_per_route('./routes_preprocessed')
if __name__ == '__main__':
preprocess_schedule_data_and_show()