Emily Trainor
Question 1
#install.packages("dplyr")
#install.packages("pacman")
pacman::p_load(nycflights13)
View(flights) # this View() function opens lets you directly view the whole dataset
glimpse(flights) # this glimpse() function provides a quick overview of the dataset
summary(flights)
Question 2
select(flights, starts_with("dep"))
sortf <- arrange(flights,desc(dep_delay))
select(sortf, carrier, flight, tailnum, everything())
summarise(flights, delay=mean(dep_delay,na.rm=TRUE))
maxdep <- max(flights$dep_delay, na.rm=TRUE)
maxdep_id <- which(flights$dep_delay==maxdep)
flights[maxdep_id, 10:12]
Question 3
not_cancelled <- flights %>%
filter(!is.na(dep_delay), !is.na(arr_delay))
not_cancelled
delays <- not_cancelled %>%
group_by(tailnum) %>%
summarise(
delay = mean(arr_delay)
)
delays
flights %>%
group_by(year, month, day) %>%
summarise(mean = mean(dep_delay, na.rm = TRUE))
not_cancelled <- flights %>%
filter(!is.na(dep_delay))
not_cancelled %>%
group_by(year, month, day) %>%
summarise(mean = mean(dep_delay))
Question 4
library(dplyr)
library(nycflights13)
avg_arrival_delay <- flights %>%
filter(!is.na(arr_delay)) %>%
group_by(tailnum) %>%
summarise(avg_delay = mean(arr_delay, na.rm = TRUE), .groups = 'drop')
str(avg_arrival_delay)
lowest_delay <- avg_arrival_delay %>%
arrange(avg_delay) %>%
slice(1)
lowest_delay
Question 5
not_cancelled %>%
group_by(year, month, day) %>%
summarise(
first = min(dep_time),
last = max(dep_time)
)
Question 6
proportion_delays <- flights %>%
filter(!is.na(dep_delay)) %>%
group_by(month) %>%
summarise(
total_flights = n(),
delayed_flights = sum(dep_delay > 60),
proportion_delayed = delayed_flights / total_flights
) %>%
arrange(month)
proportion_delays
Question 7
carriers_per_destination <- flights %>%
group_by(dest) %>%
summarise(unique_carriers = n_distinct(carrier), .groups = 'drop') %>%
arrange(desc(unique_carriers))
carriers_per_destination
Question 9
delays <- flights %>%
group_by(dest) %>%
summarise(
count = n(),
dist = mean(distance, na.rm = TRUE),
delay = mean(arr_delay, na.rm = TRUE)
) %>%
filter(count > 20, dest != "HNL")
delays
LS0tCnRpdGxlOiAiQXNzaWdubWVudCA2IgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCiMjIyMgRW1pbHkgVHJhaW5vcgoKIyBRdWVzdGlvbiAxCmBgYHtyfQojaW5zdGFsbC5wYWNrYWdlcygiZHBseXIiKQojaW5zdGFsbC5wYWNrYWdlcygicGFjbWFuIikKcGFjbWFuOjpwX2xvYWQobnljZmxpZ2h0czEzKQpWaWV3KGZsaWdodHMpICMgdGhpcyBWaWV3KCkgZnVuY3Rpb24gb3BlbnMgbGV0cyB5b3UgZGlyZWN0bHkgdmlldyB0aGUgd2hvbGUgZGF0YXNldApnbGltcHNlKGZsaWdodHMpICMgdGhpcyBnbGltcHNlKCkgZnVuY3Rpb24gcHJvdmlkZXMgYSBxdWljayBvdmVydmlldyBvZiB0aGUgZGF0YXNldApzdW1tYXJ5KGZsaWdodHMpCmBgYAoKIyBRdWVzdGlvbiAyCmBgYHtyfQoKc2VsZWN0KGZsaWdodHMsIHN0YXJ0c193aXRoKCJkZXAiKSkKYGBgCgpgYGB7cn0KIApzb3J0ZiA8LSBhcnJhbmdlKGZsaWdodHMsZGVzYyhkZXBfZGVsYXkpKSAKc2VsZWN0KHNvcnRmLCBjYXJyaWVyLCBmbGlnaHQsIHRhaWxudW0sIGV2ZXJ5dGhpbmcoKSkKYGBgCgpgYGB7cn0KCnN1bW1hcmlzZShmbGlnaHRzLCBkZWxheT1tZWFuKGRlcF9kZWxheSxuYS5ybT1UUlVFKSkKYGBgCgpgYGB7cn0KbWF4ZGVwIDwtIG1heChmbGlnaHRzJGRlcF9kZWxheSwgbmEucm09VFJVRSkKbWF4ZGVwX2lkIDwtIHdoaWNoKGZsaWdodHMkZGVwX2RlbGF5PT1tYXhkZXApCmZsaWdodHNbbWF4ZGVwX2lkLCAxMDoxMl0KYGBgCgojIFF1ZXN0aW9uIDMKYGBge3J9Cm5vdF9jYW5jZWxsZWQgPC0gZmxpZ2h0cyAlPiUgCiBmaWx0ZXIoIWlzLm5hKGRlcF9kZWxheSksICFpcy5uYShhcnJfZGVsYXkpKQoKbm90X2NhbmNlbGxlZApgYGAKCmBgYHtyfQpkZWxheXMgPC0gbm90X2NhbmNlbGxlZCAlPiUgCiBncm91cF9ieSh0YWlsbnVtKSAlPiUgCiBzdW1tYXJpc2UoCiAgZGVsYXkgPSBtZWFuKGFycl9kZWxheSkKICkKCmRlbGF5cwpgYGAKCmBgYHtyfQoKZmxpZ2h0cyAlPiUgCiBncm91cF9ieSh5ZWFyLCBtb250aCwgZGF5KSAlPiUgCiBzdW1tYXJpc2UobWVhbiA9IG1lYW4oZGVwX2RlbGF5LCBuYS5ybSA9IFRSVUUpKQpgYGAKCmBgYHtyfQoKbm90X2NhbmNlbGxlZCA8LSBmbGlnaHRzICU+JSAKIGZpbHRlcighaXMubmEoZGVwX2RlbGF5KSkKCm5vdF9jYW5jZWxsZWQgJT4lIAogZ3JvdXBfYnkoeWVhciwgbW9udGgsIGRheSkgJT4lIAogc3VtbWFyaXNlKG1lYW4gPSBtZWFuKGRlcF9kZWxheSkpCmBgYAoKIyBRdWVzdGlvbiA0CmBgYHtyfQpsaWJyYXJ5KGRwbHlyKQpsaWJyYXJ5KG55Y2ZsaWdodHMxMykKCmF2Z19hcnJpdmFsX2RlbGF5IDwtIGZsaWdodHMgJT4lCiAgZmlsdGVyKCFpcy5uYShhcnJfZGVsYXkpKSAlPiUgICAgICAgICAgICAgICAKICBncm91cF9ieSh0YWlsbnVtKSAlPiUgICAgICAgICAgICAgICAgICAgICAgIAogIHN1bW1hcmlzZShhdmdfZGVsYXkgPSBtZWFuKGFycl9kZWxheSwgbmEucm0gPSBUUlVFKSwgLmdyb3VwcyA9ICdkcm9wJykgCgpzdHIoYXZnX2Fycml2YWxfZGVsYXkpIAoKbG93ZXN0X2RlbGF5IDwtIGF2Z19hcnJpdmFsX2RlbGF5ICU+JQogIGFycmFuZ2UoYXZnX2RlbGF5KSAlPiUgICAgICAgICAgICAgICAgICAgICAgCiAgc2xpY2UoMSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgpsb3dlc3RfZGVsYXkKYGBgCgojIFF1ZXN0aW9uIDUKYGBge3J9Cm5vdF9jYW5jZWxsZWQgJT4lIAogZ3JvdXBfYnkoeWVhciwgbW9udGgsIGRheSkgJT4lIAogc3VtbWFyaXNlKAogIGZpcnN0ID0gbWluKGRlcF90aW1lKSwKICBsYXN0ID0gbWF4KGRlcF90aW1lKQogKQpgYGAKCiMgUXVlc3Rpb24gNgpgYGB7cn0KcHJvcG9ydGlvbl9kZWxheXMgPC0gZmxpZ2h0cyAlPiUKICBmaWx0ZXIoIWlzLm5hKGRlcF9kZWxheSkpICU+JSAgCiAgZ3JvdXBfYnkobW9udGgpICU+JSAgICAgICAgICAgIAogIHN1bW1hcmlzZSgKICAgIHRvdGFsX2ZsaWdodHMgPSBuKCksICAgICAgICAgIAogICAgZGVsYXllZF9mbGlnaHRzID0gc3VtKGRlcF9kZWxheSA+IDYwKSwgIAogICAgcHJvcG9ydGlvbl9kZWxheWVkID0gZGVsYXllZF9mbGlnaHRzIC8gdG90YWxfZmxpZ2h0cyAgCiAgKSAlPiUKICBhcnJhbmdlKG1vbnRoKSAgCgpwcm9wb3J0aW9uX2RlbGF5cwpgYGAKCiMgUXVlc3Rpb24gNwpgYGB7cn0KY2FycmllcnNfcGVyX2Rlc3RpbmF0aW9uIDwtIGZsaWdodHMgJT4lCiAgZ3JvdXBfYnkoZGVzdCkgJT4lICAgICAgICAgICAgICAgICAgICAgICAgICAKICBzdW1tYXJpc2UodW5pcXVlX2NhcnJpZXJzID0gbl9kaXN0aW5jdChjYXJyaWVyKSwgLmdyb3VwcyA9ICdkcm9wJykgJT4lICAKICBhcnJhbmdlKGRlc2ModW5pcXVlX2NhcnJpZXJzKSkgICAgICAgICAgICAgIAoKY2FycmllcnNfcGVyX2Rlc3RpbmF0aW9uCmBgYAoKIyBRdWVzdGlvbiA5CmBgYHtyfQpkZWxheXMgPC0gZmxpZ2h0cyAlPiUgCiBncm91cF9ieShkZXN0KSAlPiUgCiBzdW1tYXJpc2UoCiAgY291bnQgPSBuKCksCiAgZGlzdCA9IG1lYW4oZGlzdGFuY2UsIG5hLnJtID0gVFJVRSksCiAgZGVsYXkgPSBtZWFuKGFycl9kZWxheSwgbmEucm0gPSBUUlVFKQogKSAlPiUgCiBmaWx0ZXIoY291bnQgPiAyMCwgZGVzdCAhPSAiSE5MIikKCmRlbGF5cwpgYGAKCg==