Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✈️ Predictor de Vuelos de Aerolíneas

Este proyecto es una aplicación web interactiva desarrollada con Streamlit y scikit-learn que predice el número de pasajeros y el factor de ocupación de una ruta de vuelo específica, basándose en datos históricos de aerolíneas de EE. UU.

El modelo entrenado predice el número de pasajeros, y a partir de esta predicción, la aplicación calcula el factor de ocupación y determina si la ruta tendrá una demanda alta (ocupación ≥ 90%).

⚙️ Características

  • Predicción de Pasajeros: Utiliza un modelo de Regresión Lineal para estimar la cantidad de pasajeros esperados.
  • Cálculo de Demanda: Determina el factor de ocupación y clasifica la demanda como "Alta" o "Baja" en tiempo real.
  • Visualización Histórica: Muestra gráficos interactivos de la evolución de la tarifa promedio y el factor de ocupación para la ruta seleccionada.
  • Tecnología: Desarrollado en Python con Streamlit para el frontend interactivo.

🗃️ Estructura del Proyecto

Archivo Descripción
app.py Código principal de la aplicación Streamlit. Maneja la interfaz de usuario, la carga del modelo y las predicciones.
entrenamiento.py Script para cargar, preprocesar los datos y entrenar el modelo de Regresión Lineal. Genera passengers_model.pkl y route_encodings.pkl.
US Airline Flight Routes and Fares 1993-2024.csv Dataset histórico original (datos de vuelos y tarifas).
gold_flight_data.csv Versión preprocesada y enriquecida del dataset para el entrenamiento.
requirements.txt Lista de librerías de Python necesarias para ejecutar el proyecto.
route_encodings.pkl Archivo de serialización que contiene los Label Encodings de las rutas de vuelo, crucial para la aplicación.
passengers_model.pkl (No incluido) Archivo del modelo entrenado de Regresión Lineal. Se genera al ejecutar entrenamiento.py.

📋 Requisitos e Instalación

Este proyecto requiere Python 3.x y las librerías listadas en requirements.txt.

1. Crear el Entorno Virtual (Opcional pero recomendado)

python -m venv venv
source venv/bin/activate  # En Linux/macOS
# o
venv\Scripts\activate  # En Windows

2. Instalar Dependencias

Instala las dependencias usando el archivo provisto. Nota: Dado que tu código utiliza scikit-learn y altair, la siguiente instalación garantizará que todas las librerías necesarias estén disponibles, asumiendo que el archivo requirements.txt original fue extendido:

pip install streamlit pandas numpy scikit-learn altair
# También puedes usar el archivo que proporcionaste:
# pip install -r requirements.txt

🚀 Uso

Paso 1: Entrenar el Modelo (Obligatorio)

Dado que no se incluyó el archivo passengers_model.pkl, debes ejecutar el script de entrenamiento para generar los archivos binarios necesarios (passengers_model.pkl y route_encodings.pkl) que la aplicación app.py requiere.

Asegúrate de tener el archivo de datos (US Airline Flight Routes and Fares 1993-2024.csv) en el directorio del proyecto antes de ejecutar:

python entrenamiento.py

Al finalizar, este script guardará el modelo entrenado, y verás un mensaje de confirmación.

Paso 2: Ejecutar la Aplicación Web

Una vez que el modelo ha sido generado, inicia la aplicación Streamlit:

streamlit run app.py

La aplicación se abrirá automáticamente en tu navegador predeterminado (típicamente en http://localhost:8501). Allí podrás ingresar la ruta de vuelo, el año, el trimestre y la capacidad de la aeronave para obtener predicciones en tiempo real.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages