knitr::opts_chunk$set(echo = TRUE)

library(tidyverse)
library(nycflights13)

# on charge les donnees
data(flights)
data(airports)
data(airlines)

# jointure simple
df <- flights %>%
  filter(!is.na(dep_delay)) %>%
  left_join(airports, by = c("dest" = "faa"))

Introduction

ici on va analyser les donnees des vols de new york en 2013.
on utilise les paquets vus en cours.


1. Carte des destinations

on groupe par ville pour voir les gros aeroports. la taille du point c’est le nombre de vols et la couleur c’est le retard.

# on prepare les donnees par ville
d2 <- df %>%
  group_by(dest) %>%
  summarise(
    nb = n(),
    moy = mean(dep_delay, na.rm = TRUE),
    lat = first(lat),
    lon = first(lon)
  ) %>%
  filter(!is.na(lat), nb > 20)

# la carte avec taille et couleur
ggplot(d2, aes(x = lon, y = lat)) +
  borders("state") +
  geom_point(aes(size = nb, color = moy), alpha = 0.8) +
  scale_color_gradient(low = "green", high = "red") +
  labs(
    title = "trafic et retards",
    x = "longitude", 
    y = "latitude",
    size = "nb vols",
    color = "retard moy"
  ) +
  coord_quickmap() +
  theme_minimal()


2. Retard par heure de depart

est ce qu’il y a plus de retard le soir ?

par_heure <- df %>%
  group_by(hour) %>%
  summarise(
    retard_moyen = mean(dep_delay, na.rm = TRUE),
    nb = n()
  )

ggplot(par_heure, aes(x = hour, y = retard_moyen)) +
  geom_line(color = "red", size = 1) +
  geom_point() +
  labs(
    title = "evolution du retard dans la journee",
    x = "heure",
    y = "retard moyen (min)"
  ) +
  theme_light()


Conclusion

on voit que les retards augmentent au fur et a mesure de la journee.
il vaut mieux partir le matin.