library(nycflights13)
library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.3.6     ✔ purrr   0.3.4
## ✔ tibble  3.1.8     ✔ dplyr   1.1.0
## ✔ tidyr   1.2.1     ✔ stringr 1.4.1
## ✔ readr   2.1.2     ✔ forcats 0.5.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
library(dplyr)
flight <- flights

1. ¿Qué avión tiene el peor tiempo de puntualidad?

tail <- group_by(flight, tailnum)
hol <- summarize(tail, delay=mean(arr_delay, na.rm=TRUE))
arr <- arrange(hol, delay)

####El avión N844MH tiene el peor tiempo de impuntualidad con 320 minutos.

2.¿A qué hora del día debes evitar volar si quieres evitar los retrasos tanto como sea posible?

hora <- group_by(flight, hour)
hol2 <- summarize(hora, arr_delay=mean(arr_delay, na.rm=TRUE))
arr2 <- arrange(hol2, arr_delay)

A las 21hrs hay la mayor cantidad de retrasos, mientras que a las 5hr de la mañana hay el menor numero de retrasos.

3. Encuentre todos los destinos en los que vuelan al menos dos aerolineas. Utilice esa información para clasificar las aerolineas.

flight %>%
  #find all airports with > 1 carrier
  group_by(dest) %>% #agrupar por destino
  mutate(n_carriers = n_distinct(carrier))%>% #crea una nueva columna, llamada n_carriers
  filter(n_carriers > 1) %>% 
  #rank carriers by number of destinations
  group_by(carrier) %>%
  summarize(n_dest = n_distinct(dest)) %>%
  arrange(desc(n_dest))
## # A tibble: 16 × 2
##    carrier n_dest
##    <chr>    <int>
##  1 EV          51
##  2 9E          48
##  3 UA          42
##  4 DL          39
##  5 B6          35
##  6 AA          19
##  7 MQ          19
##  8 WN          10
##  9 OO           5
## 10 US           5
## 11 VX           4
## 12 YV           3
## 13 FL           2
## 14 AS           1
## 15 F9           1
## 16 HA           1