Question 4:

Tail Number with the Lowest Average Arrival Delay

flights %>%
  filter(!is.na(arr_delay)) %>%
  group_by(tailnum) %>%
  summarise(avg_arr_delay = mean(arr_delay), .groups = "drop") %>%
  arrange(avg_arr_delay) %>%
  slice(1)
## # A tibble: 1 × 2
##   tailnum avg_arr_delay
##   <chr>           <dbl>
## 1 N560AS            -53

Question 6:

Proportion of Flights Delayed More Than One Hour by Month

flights %>%
  filter(!is.na(dep_delay)) %>%
  group_by(month) %>%
  summarise(
    proportion_over_1hr = mean(dep_delay > 60),
    .groups = "drop"
  ) %>%
  arrange(desc(proportion_over_1hr))
## # A tibble: 12 × 2
##    month proportion_over_1hr
##    <int>               <dbl>
##  1     7              0.134 
##  2     6              0.128 
##  3    12              0.0942
##  4     4              0.0916
##  5     3              0.0837
##  6     5              0.0818
##  7     8              0.0796
##  8     2              0.0698
##  9     1              0.0688
## 10     9              0.0490
## 11    10              0.0469
## 12    11              0.0402

Question 7:

Destinations with the Most Carriers

flights %>%
  group_by(dest) %>%
  summarise(num_carriers = n_distinct(carrier), .groups = "drop") %>%
  arrange(desc(num_carriers)) %>%
  head(10)
## # A tibble: 10 × 2
##    dest  num_carriers
##    <chr>        <int>
##  1 ATL              7
##  2 BOS              7
##  3 CLT              7
##  4 ORD              7
##  5 TPA              7
##  6 AUS              6
##  7 DCA              6
##  8 DTW              6
##  9 IAD              6
## 10 MSP              6