Para apreciar completamente sus datos, debe graficarlos (a menudo de muchas maneras). De nuevo, aquí lo hacemos para generar hipótesis sobre el rendimiento a tiempo. No vamos a construir un modelo en esta guía, pero encontrar algunos potenciales impulsores del rendimiento a tiempo sería un buen comienzo.
Conductores numéricos de los retrasos de vuelo
En cualquier conjunto de datos, tienes que dividir tu trabajo de visualización para tus variables numéricas vs. categóricas (ya que los tipos de gráficos difieren). La gráfica de dispersión es una herramienta impresionante para examinar la relación entre dos variables continuas. Aquí graficaremos varias de ellas para examinar los potenciales impulsores de los retrasos en la llegada. Usaremos los paquetes ggplot2 y tidyr, que son parte del tidyverse.
1234567d %N-;% select_if(is.numeric)%N-;% tidyr::gather(-arr_delay, key ="var", value ="value")%N-;% ggplot(aes(x = value, y = arr_delay))+ facet_wrap(~ var, scales ="free")+ geom_point()+ stat_mooth()
r
Observe que la línea azul es la tendencia suavizada. Aunque las relaciones no son tan claras como nos gustaría, podemos ver que el retraso en la llegada (en el eje y) tiene una relación con la dep_time (hora de salida) – parece que los vuelos se reinician alrededor de las 5AM y los retrasos se hacen más comunes más tarde en el día. Esto se ve en varias de las otras variables también (ya que se relacionan con dep_time). Por supuesto, los retrasos de salida están muy relacionados con los retrasos de llegada (especialmente para los retrasos de salida más largos).
Conductores categóricos de la demora
Ahora veamos las columnas categóricas y determinemos cómo se relacionan con los retrasos de llegada (arr_delay). Obsérvese que es difícil manejar visualmente las columnas con muchas columnas categóricas. Aquí observamos los resultados de Variable type:character de la parte superior de los resultados desnatados de arriba y tomamos aquellas variables con menos de 20 valores únicos (que se muestran en la columna n_unique). Eso incluye la compañía aérea (es decir, la aerolínea) y el origen (es decir, el aeropuerto de origen del vuelo).
1234567d %|;%# Sólo columnas de agarre con unas pocas categorías y col numéricas de interés select(carrier, origin, arr_delay)%;% gather(-arr_delay, key ="var", value ="value")%;% ggplot(aes(x = value, y = arr_delay))+ facet_wrap(~ var, scales ="free")+ geom_boxplot()
r
Aquí vemos que hay diferencias notables en los retrasos de llegada tanto de la aerolínea como del aeropuerto de origen. ¡Buen trabajo HA (Hawaiian Airlines)! Si trabajas en la aviación, estos gráficos podrían generar varias hipótesis sobre dónde deberían ir a continuación tus datos.
Nota, si quieres aprovechar las columnas categóricas con más de ~20 valores únicos, se requiere una ruta diferente. Tomemos los vuelos que tienen más de 120 minutos de retraso.
12d_late <- d %>% filter(arr_delay >120)
r
Ahora analicemos los datos en términos de tablas de contingencia que presentan las proporciones (porcentajes) de cada combinación de categorías (a partir de aquí). Estas permiten incorporar columnas con muchas variables categóricas (destino) para determinar dónde se producen los retrasos con mayor frecuencia
Ah, parece que el vuelo EWR a ATL en DL (Delta) y EV (Express Jet) son particularmente propensos a retrasos de más de 120 minutos. ¿Qué está pasando allí? Nota, esta tabla no alimenta el análisis, las otras aerolíneas mostradas pueden no tener vuelos de EWR a ATL.
Tengan en cuenta que este código puede producir una tonelada de salida, y sólo hemos mostrado un recorte. Por supuesto, puedes controlar esto por las variables que incluyes en la llamada de la función de la tabla de arriba.