AHORA NUESTROS CURSOS TAMBIÉN ONLINE
ONLINE
Contactar
Menu
ALUMNOS
Contactar

Proyecto destacado Data Science. VuelaRandom.

5 de noviembre de 2020 10:41:46 CET

VuelaRandom es el proyecto de Data Science realizado por Guillermo Contreras del Río, David López García y Noelia Medina Vitoria, donde estudiaron los patrones de subida y bajada de precios de vuelos, así como la capacidad de ofrecer los mejores precios a los usuarios.

logo_vuelarandom_proyecto_data_science-1

El objetivo era desarrollar una aplicación que permite al usuario, que no tiene ni destino ni fechas preestablecidas, conseguir vuelos baratos dentro de un precio específico, y además, darle la opción de acceder directamente a la página de compra de dicho billete.

Según este estudio, se calculó que se puede ahorrar hasta un 50% en el precio del billete de avión, ¡veamos cómo se desarrolló!

Descripción y desarrollo del proyecto VuelaRandom

Como comentábamos arriba, la idea es ayudar a los usuarios que quieren viajar sin gastarse una fortuna, y que no tienen un destino o fechas concretas.

La mecánica, que se desglosará a lo largo del post, es la siguiente: 

  1. El cliente selecciona un aeropuerto de origen, el precio máximo que está dispuesto a pagar y el número de días que quiere que transcurra entre el viaje de ida y el de vuelta. 
  2. La aplicación busca en diversas webs de aerolíneas todos los vuelos que cumplan estas  condiciones para los siguientes 90 días. 
  3. A través del web scrapping se extrae la información obteniendo los vuelos más económicos, los destinos y el enlace directo a la compra del vuelo.

Para este proceso, se han utilizado las librerías Selenium, BeautifulSoup, Pandas y Folium. Además, se utilizó Tkinter como interfaz gráfica.

En cambio, para realizar la búsqueda de vuelos de forma optimizada se aplicó Multithread, que permite realizar búsquedas simultáneas. Como herramienta para el trabajo colaborativo se utilizó GitHub, como repositorio de versiones del proyecto.

Desde el principio, el dataset, ¿de dónde salen los datos?

A día de hoy que estamos acostumbrados a buscar en múltiples plataformas nuestros vuelos, por lo que, a priori, puede parecer sencillo encontrar una buena base de datos, pero nada más lejos de la realidad. Lamentablemente, toda base de datos histórica de vuelos se encuentra hospedada en webs de pago, siendo estas muy costosas.

Finalmente, se decidió hacer una recopilación exhaustiva de información a través de web scrapping, dando como resultado 2.484.634 registros. Esto dio como resultado un dataset de gran importancia al que se añadieron columnas de interés para enriquecerla.

Análisis y resultados de los vuelos

Para comenzar a conocer el comportamiento de las oscilaciones de precios, se analizaron los vuelos con origen Madrid a 150 destinos. 

La mayor densidad de vuelos se encuentra entre 100 y 180 euros,  representando el 40% de los vuelos. Para analizar el precio de los vuelos, se realizó una primera distinción entre vuelos de corta distancia y larga distancia.

A continuación, se clasificó el precio de los vuelos de cada aerolínea según la media de Euros por hectokilómetro para obtener una medida más objetiva del valor de cada vuelo.

La media de euros por hectokilómetro para vuelos de corta distancia es de 26,67€/hkm, siendo Laudamotion y Ryanair las aerolíneas más económicas, perteneciendo al mismo grupo.

Para vuelos de larga distancia se obtiene una media de 8,83€/hkm, resultando 3 veces más económico que en los vuelos de corta distancia, lo cual nos confirma la lógica de la distinción entre estas variables.

Destacan las aerolíneas Laudamotion y Air Arabia Maroc como las más económicas respecto al precio por hectokilómetro.

¿Cuáles son los destinos más económicos?

A continuación, se analizaron los destinos según el precio mínimo que se pueden obtener.

El precio más bajo que se encontró fue de 24€ para el destino Oporto. Los precios mínimos  mayormente oscilaron entre 25 y 60 euros, llegando a ser en algunos casos de más de 100 euros.

Palma de Mallorca y Marsella también destacan como parte de los destinos más económicos. Por el  contrario, los destinos más caros desde Madrid son Turín, Alghero y Lourdes.

En larga distancia los precios mínimos oscilan en un rango más amplio, de 100 a 400 euros. Zúrich, Edimburgo, Eindhoven destacan como destinos más económicos y Luanda, Lagos y Lima como destinos más caros.

¿Cuáles son los días más económicos para viajar?

Para analizar qué días de la semana es más barato viajar, se representó en un diagrama de barras la media de precios para vuelos cortos y vuelos largos.

Ambos tipos de vuelos tienen en común los miércoles y jueves como días más económicos para viajar. Se destaca para vuelos de larga distancia el viernes, siendo en vuelos de corta distancia uno de los más caros.

También, se analizó el patrón de subidas y bajadas de precio a lo largo del trimestre. Se representan 3 rutas; Milán, Lanzarote y Catania, siendo un ejemplo de la distribución que siguen la mayoría de los destinos.

Como resultado, se observó cómo los precios son elevados a corto plazo y comienzan a bajar a un mes y medio vista. Otra variable influyente, es la subida que se observa en el mes de diciembre, por lo que se concluye que la variable festivos puede ser determinante en la subida de los precios, y se tendrá en cuenta en futuros estudios.

El resultado, la aplicación VuelaRandom

Cuando se inicia el programa, se cargan los datos necesarios para su correcto funcionamiento (información de los aeropuertos, aeropuertos de origen disponibles y vuelos, etc.) y, una vez cargada la información, se permite al usuario entrar en la aplicación.

Al entrar en la aplicación, el usuario podrá seleccionar un aeropuerto de origen, el número de días que quiera que transcurra entre el vuelo de ida y el vuelo de vuelta (este valor es optativo, teniendo un valor por defecto de 7 días) y el precio máximo que quiere pagar por el billete de Ida y vuelta como dato obligatorio.

Cuando se pulsa en el botón Buscar Vuelos, el programa empieza a buscar 10 vuelos aleatorios, informando al usuario en la parte superior de los filtros de búsqueda usados.

Y, según va encontrando vuelos, informa al usuario sobre el número de vuelos que encajan con los requisitos.

Una vez finalizada la búsqueda de los 10 vuelos (o menos si no se hubiesen encontrado 10 vuelos), se muestra, tal como se puede observar en la imagen, una tabla con los 10 vuelos aleatorios encontrados, con un botón por vuelo para acceder a la compra del billete, y una nueva ventana de su navegador de Internet habitual con un mapa navegable en donde podrá observar el Aeropuerto de origen y 10 marcadores (uno por cada vuelo), indicando la ciudad, la fecha de salida y el precio del billete.

mapa_vuelos_vuelarandom_proyecto_data_science

Conclusiones del proyecto

A lo largo de la investigación, se han detectado patrones de subida y bajada en los precios de los vuelos en función de varios factores:

El principal la distancia del recorrido, diferenciando entre cortos (menos de 1.100 kilómetros) y vuelos largos (más de 1.100 kilómetros), destino y fecha, pudiéndose alcanzar un ahorro de hasta un 50% en el precio de los billetes.

Existe un patrón de lógica de negocio para los criterios de fijación de precios de las aerolíneas que nos permite la optimización del algoritmo de búsqueda de vuelos económicos.


Si tú también quieres ser capaz de desarrollar proyectos como este que exprimen todo el jugo a los datos, echa un vistazo a nuestros Data Science Bootcamp.

También te puede interesar

Estos post sobre NEOLAND

Suscríbete a nuestro email

Todavía no hay comentarios

Dinos que estás pensando