Se estiman salidas registradas, no demanda sin atender ni disponibilidad de bicicletas.
¿Cuántas salidas habrá mañana?
Usé viajes reales de Ecobici para estimar las salidas observadas por estación y día. Separé entrenamiento y prueba en el tiempo y comparé el modelo con una referencia simple.
Buenos Aires Data · Recorridos 2024 y 2025 · Modelo ejecutado localmente
salidas desde estaciones registradas en 2024–2025
estación-días entre noviembre y diciembre de 2025, después de entrenar hasta octubre.
salidas por estación-día, frente a 7,701 de la referencia de cuatro semanas.
El promedio oculta un mes difícil.
Comparé el modelo con una regla que cualquiera puede calcular: el promedio de los cuatro mismos días de la semana anteriores para cada estación.
Prueba fuera de entrenamiento
Así pasé de viajes a una estimación para mañana.
Primero normalicé los IDs de estación entre los archivos de 2024 y 2025, quité un viaje repetido y agrupé las salidas por estación y fecha. Completé los días sin viajes solo entre la primera y la última salida observada de cada estación. Con eso definí una fila por estación y día, que es exactamente la unidad que quiero pronosticar.
Para cada día usé calendario, salidas del día anterior y de la semana anterior, promedios de 7 y 28 días y el promedio de los cuatro mismos días de semana previos. Desplacé todas las variables de viajes hacia atrás: al estimar mañana, el modelo solo puede ver lo que ya habría ocurrido hoy.
Un cero en la serie puede significar que no hubo viajes o que la estación estuvo cerrada. Tampoco tengo inventario, clima ni eventos especiales. Por eso llamo al objetivo “salidas observadas”, no demanda total, y probaría más meses y estaciones antes de usar el pronóstico para redistribuir bicicletas.
Dejé visible cómo evalué el modelo.
Conté y limpié viajes
Reuní 3.559.284 filas de 2024 y 3.156.182 de 2025. Un ID de viaje de 2024 estaba repetido; después de deduplicar quedaron 6.715.465 viajes.
Usé solo el pasado
Construí retardos de 1 y 7 días y medias móviles calculadas después de desplazar la serie. Comparé un HistGradientBoostingRegressor con la referencia de cuatro semanas.
Respeté el tiempo
Entrené con datos hasta el 31/10/2025 y reservé noviembre y diciembre para prueba. Calculé MAE y WAPE sobre los mismos 24.395 estación-días para ambas alternativas.
Separé ejecución y preparación
La auditoría y el modelo corrieron localmente con DuckDB, pandas y scikit-learn. Preparé un notebook con PySpark, Delta y MLflow, pero todavía no ejecuté ni validé el resultado en Databricks.
Buenos Aires Data, Bicicletas Públicas, licencia CC BY 2.5 AR. El export a Parquet conserva año, ID de viaje, inicio y estación; excluye datos de usuario. El código y las métricas locales están disponibles para revisar.
¿Buscás ciencia de datos con evaluación honesta?
Puedo preparar datos, comparar modelos con referencias y explicar dónde funcionan y dónde todavía fallan.