Airlines está compuesta de dos clumnas. CARRIER muestra el código IATA de la aerloínea y NAME su nombre completo
head(airlines)
## # A tibble: 6 x 2
## carrier name
## <chr> <chr>
## 1 9E Endeavor Air Inc.
## 2 AA American Airlines Inc.
## 3 AS Alaska Airlines Inc.
## 4 B6 JetBlue Airways
## 5 DL Delta Air Lines Inc.
## 6 EV ExpressJet Airlines Inc.
Airports contine 8 columnas.
La primera es FAA, el cual es un código perteneciente al sistema Federal Aviation Administration, que es especifico para cada aeropuerto público. Después, NAME contine el nombre del aeropuerto, LAT su latitud, LON su longitud y ALT la altura.
Por último, las 3 columnas restantes, tienen que ver con el timezone: TZ es el desfase de zona horaria de gmt, DST es la zona horaria de ahorro de luz diurna y el TZ es el timezone.
head(airports)
## # A tibble: 6 x 8
## faa name lat lon alt tz dst tzone
## <chr> <chr> <dbl> <dbl> <dbl> <dbl> <chr> <chr>
## 1 04G Lansdowne Airport 41.1 -80.6 1044 -5 A America/New_Y…
## 2 06A Moton Field Municipal Airp… 32.5 -85.7 264 -6 A America/Chica…
## 3 06C Schaumburg Regional 42.0 -88.1 801 -6 A America/Chica…
## 4 06N Randall Airport 41.4 -74.4 523 -5 A America/New_Y…
## 5 09J Jekyll Island Airport 31.1 -81.4 11 -5 A America/New_Y…
## 6 0A9 Elizabethton Municipal Air… 36.4 -82.2 1593 -5 A America/New_Y…
La tercera tabla, ya la conocemos, pues se tarta de flights… la tabla de 19 columnos que registra todos los vuelos de NYC realizados en el año 2013. Por lo tanto, ya estamos familiarizados con sus columnas
head(flights)
## # A tibble: 6 x 19
## year month day dep_time sched_dep_time dep_delay arr_time sched_arr_time
## <int> <int> <int> <int> <int> <dbl> <int> <int>
## 1 2013 1 1 517 515 2 830 819
## 2 2013 1 1 533 529 4 850 830
## 3 2013 1 1 542 540 2 923 850
## 4 2013 1 1 544 545 -1 1004 1022
## 5 2013 1 1 554 600 -6 812 837
## 6 2013 1 1 554 558 -4 740 728
## # … with 11 more variables: arr_delay <dbl>, carrier <chr>, flight <int>,
## # tailnum <chr>, origin <chr>, dest <chr>, air_time <dbl>, distance <dbl>,
## # hour <dbl>, minute <dbl>, time_hour <dttm>
flights_1 <-flights%>%
select("carrier","dest", "air_time")
head(flights_1)
## # A tibble: 6 x 3
## carrier dest air_time
## <chr> <chr> <dbl>
## 1 UA IAH 227
## 2 UA IAH 227
## 3 AA MIA 160
## 4 B6 BQN 183
## 5 DL ATL 116
## 6 UA ORD 150
aerolineas <- flights_1 %>%
left_join(airlines, by = "carrier")%>%
select(carrier, name, dest, air_time)
aerolineas
## # A tibble: 336,776 x 4
## carrier name dest air_time
## <chr> <chr> <chr> <dbl>
## 1 UA United Air Lines Inc. IAH 227
## 2 UA United Air Lines Inc. IAH 227
## 3 AA American Airlines Inc. MIA 160
## 4 B6 JetBlue Airways BQN 183
## 5 DL Delta Air Lines Inc. ATL 116
## 6 UA United Air Lines Inc. ORD 150
## 7 B6 JetBlue Airways FLL 158
## 8 EV ExpressJet Airlines Inc. IAD 53
## 9 B6 JetBlue Airways MCO 140
## 10 AA American Airlines Inc. ORD 138
## # … with 336,766 more rows
aeropuertos <- aerolineas%>%
left_join(airports, c("dest"="faa"))
head(aeropuertos)
## # A tibble: 6 x 11
## carrier name.x dest air_time name.y lat lon alt tz dst tzone
## <chr> <chr> <chr> <dbl> <chr> <dbl> <dbl> <dbl> <dbl> <chr> <chr>
## 1 UA United … IAH 227 George B… 30.0 -95.3 97 -6 A Ameri…
## 2 UA United … IAH 227 George B… 30.0 -95.3 97 -6 A Ameri…
## 3 AA America… MIA 160 Miami In… 25.8 -80.3 8 -5 A Ameri…
## 4 B6 JetBlue… BQN 183 <NA> NA NA NA NA <NA> <NA>
## 5 DL Delta A… ATL 116 Hartsfie… 33.6 -84.4 1026 -5 A Ameri…
## 6 UA United … ORD 150 Chicago … 42.0 -87.9 668 -6 A Ameri…
renamed <- aeropuertos%>%
rename(nombre_aerolinea= name.x, nombre_aeropuerto=name.y )
head(renamed)
## # A tibble: 6 x 11
## carrier nombre_aerolinea dest air_time nombre_aeropuer… lat lon alt
## <chr> <chr> <chr> <dbl> <chr> <dbl> <dbl> <dbl>
## 1 UA United Air Line… IAH 227 George Bush Int… 30.0 -95.3 97
## 2 UA United Air Line… IAH 227 George Bush Int… 30.0 -95.3 97
## 3 AA American Airlin… MIA 160 Miami Intl 25.8 -80.3 8
## 4 B6 JetBlue Airways BQN 183 <NA> NA NA NA
## 5 DL Delta Air Lines… ATL 116 Hartsfield Jack… 33.6 -84.4 1026
## 6 UA United Air Line… ORD 150 Chicago Ohare I… 42.0 -87.9 668
## # … with 3 more variables: tz <dbl>, dst <chr>, tzone <chr>
A partir de esta tabla y las columnas que muestra, podemos observar que a pesar de tratarse del mismo carrier y mismo destino, existen veces que el tiempo en el aire varía al realizar un recorrido exactamente igual
renamed%>%
select(carrier, nombre_aerolinea, dest, nombre_aeropuerto, air_time, lat, lon, tzone)
## # A tibble: 336,776 x 8
## carrier nombre_aerolinea dest nombre_aeropuerto air_time lat lon tzone
## <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl> <chr>
## 1 UA United Air Lines… IAH George Bush Inter… 227 30.0 -95.3 Amer…
## 2 UA United Air Lines… IAH George Bush Inter… 227 30.0 -95.3 Amer…
## 3 AA American Airline… MIA Miami Intl 160 25.8 -80.3 Amer…
## 4 B6 JetBlue Airways BQN <NA> 183 NA NA <NA>
## 5 DL Delta Air Lines … ATL Hartsfield Jackso… 116 33.6 -84.4 Amer…
## 6 UA United Air Lines… ORD Chicago Ohare Intl 150 42.0 -87.9 Amer…
## 7 B6 JetBlue Airways FLL Fort Lauderdale H… 158 26.1 -80.2 Amer…
## 8 EV ExpressJet Airli… IAD Washington Dulles… 53 38.9 -77.5 Amer…
## 9 B6 JetBlue Airways MCO Orlando Intl 140 28.4 -81.3 Amer…
## 10 AA American Airline… ORD Chicago Ohare Intl 138 42.0 -87.9 Amer…
## # … with 336,766 more rows
A partir de estos resultados podemos ver que el promedio de tiempo en el aire es de 2.5 horas, el máximo es de 11 hrs con 58 min y el mínimo es de 20min, lo cual da un rango de 11.25 hrs.
Adicionalmente, observando los cuartiles, podemos observar que lo más popular es que los vuelos no sean tan cortos
renamed%>%
select(air_time)%>%
summary()
## air_time
## Min. : 20.0
## 1st Qu.: 82.0
## Median :129.0
## Mean :150.7
## 3rd Qu.:192.0
## Max. :695.0
## NA's :9430
Para poder hacerlo, primero recordaremos cuál es la media de las distancias.
Abajo podemos observar que la media de las distancias recorridas por todos los vuelos registrados, es de 1040 millas
flights%>%
select(distance)%>%
summary()
## distance
## Min. : 17
## 1st Qu.: 502
## Median : 872
## Mean :1040
## 3rd Qu.:1389
## Max. :4983
Después adicionaremos la columna flight_lenght a la tabla por medio de la función mutate.
En esta tabla, podemos observar que JetBlue y Envoy Air hacen muchos vuelos cortos mientras que United y Hawaiian Airlines suelen hacer vuelos más largos. A partir de esto, podemos darnos cuenta que Jetblue y Envoy deberán realizar muchos vuelos para ser posicionados como lideres en términos de tráfico aéreo, pero United y Hawaiian pueden realizar menos y mantener un total de millas mayor más facilmente
Además, mientras menor sea el desfase de zona horaria de gmt (columna tz) y la longitud (lon), mayor es la posibilidad de que se trate de un vuelo corto
distance <- flights$distance
flight_lenghts<- cbind(renamed, distance)
mutate(renamed, flight_lenght = ifelse(distance > 1040, "vuelo largo", "vuelo corto"))
## # A tibble: 336,776 x 12
## carrier nombre_aerolinea dest air_time nombre_aeropuer… lat lon alt
## <chr> <chr> <chr> <dbl> <chr> <dbl> <dbl> <dbl>
## 1 UA United Air Line… IAH 227 George Bush Int… 30.0 -95.3 97
## 2 UA United Air Line… IAH 227 George Bush Int… 30.0 -95.3 97
## 3 AA American Airlin… MIA 160 Miami Intl 25.8 -80.3 8
## 4 B6 JetBlue Airways BQN 183 <NA> NA NA NA
## 5 DL Delta Air Lines… ATL 116 Hartsfield Jack… 33.6 -84.4 1026
## 6 UA United Air Line… ORD 150 Chicago Ohare I… 42.0 -87.9 668
## 7 B6 JetBlue Airways FLL 158 Fort Lauderdale… 26.1 -80.2 9
## 8 EV ExpressJet Airl… IAD 53 Washington Dull… 38.9 -77.5 313
## 9 B6 JetBlue Airways MCO 140 Orlando Intl 28.4 -81.3 96
## 10 AA American Airlin… ORD 138 Chicago Ohare I… 42.0 -87.9 668
## # … with 336,766 more rows, and 4 more variables: tz <dbl>, dst <chr>,
## # tzone <chr>, flight_lenght <chr>