|
|
|
|
|
|
|
|
import pandas as pd |
|
|
import numpy as np |
|
|
|
|
|
def simulate_transport_data(): |
|
|
""" |
|
|
Simula datos de transporte urbano para varios autobuses durante una semana. |
|
|
|
|
|
Returns: |
|
|
pd.DataFrame: DataFrame con datos simulados. |
|
|
""" |
|
|
|
|
|
buses = ['Bus_01', 'Bus_02', 'Bus_03', 'Bus_04'] |
|
|
|
|
|
|
|
|
days = pd.date_range(start="2025-04-01", periods=7, freq='D') |
|
|
|
|
|
|
|
|
data = [] |
|
|
|
|
|
|
|
|
for bus in buses: |
|
|
for day in days: |
|
|
|
|
|
punctuality = np.random.uniform(85, 99) |
|
|
occupancy = np.random.uniform(30, 100) |
|
|
km = np.random.uniform(150, 300) |
|
|
fuel_eff = np.random.uniform(20, 35) |
|
|
coverage = np.random.choice([80, 90, 100]) |
|
|
|
|
|
|
|
|
data.append({ |
|
|
"bus_id": bus, |
|
|
"date": day, |
|
|
"punctuality": round(punctuality, 2), |
|
|
"occupancy": round(occupancy, 2), |
|
|
"km": round(km, 1), |
|
|
"fuel_eff": round(fuel_eff, 2), |
|
|
"route_coverage": coverage |
|
|
}) |
|
|
|
|
|
|
|
|
return pd.DataFrame(data) |