Question 1: Join + filter - Which airplanes fly LGA to XNA

Q1 <- flights %>%
  filter(origin == "LGA", dest == "XNA") %>%
  left_join(planes, by = "tailnum") %>%
  select(manufacturer, model) %>%
  distinct()
print(Q1)
## # A tibble: 5 × 2
##   manufacturer         model      
##   <chr>                <chr>      
## 1 <NA>                 <NA>       
## 2 GULFSTREAM AEROSPACE G1159B     
## 3 CESSNA               172N       
## 4 CANADAIR LTD         CF-5D      
## 5 BOMBARDIER INC       CL-600-2C10

Question: 2 Join - Add the airline name to the flights table

Q2 <- flights %>%
  left_join(airlines, by = "carrier")
print(Q2)
## # A tibble: 336,776 × 20
##     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
##  7  2013     1     1      555            600        -5      913            854
##  8  2013     1     1      557            600        -3      709            723
##  9  2013     1     1      557            600        -3      838            846
## 10  2013     1     1      558            600        -2      753            745
## # ℹ 336,766 more rows
## # ℹ 12 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>, name <chr>

Question 3: Join + select + distinct() - Which airports have no commercial flights

Q3 <- airports %>%
  anti_join(flights, by = c("faa" = "origin")) %>%
  select(name) %>%
  distinct()
print(Q3)
## # A tibble: 1,437 × 1
##    name                          
##    <chr>                         
##  1 Lansdowne Airport             
##  2 Moton Field Municipal Airport 
##  3 Schaumburg Regional           
##  4 Randall Airport               
##  5 Jekyll Island Airport         
##  6 Elizabethton Municipal Airport
##  7 Williams County Airport       
##  8 Finger Lakes Regional Airport 
##  9 Shoestring Aviation Airfield  
## 10 Jefferson County Intl         
## # ℹ 1,427 more rows

Extra Credit: Airports with the most winds (wind_speed > 30)

EC <- weather %>%
  filter(wind_speed > 30) %>%
  select(origin) %>%
  distinct() %>%
  inner_join(airports, by = c("origin" = "faa")) %>%
  select(name) %>%
  distinct()
print(EC)
## # A tibble: 3 × 1
##   name               
##   <chr>              
## 1 Newark Liberty Intl
## 2 John F Kennedy Intl
## 3 La Guardia