Prof. Eric A. Suess

So how should you complete your homework for this class?

Homework 3:

 Read: Chapter 5
 Do 5.2.4 Exercises 1, 2,
 Do 5.3.1 Exericise 2
library(tidyverse)

5.2.4

1.

This problem looks at the nycflights13 data set.

library(nycflights13)
flights

These questions relate to finding the flights that meet the conditions specified.

Note that dep_delay is in minutes.

  1. Had an arrival delay of two or more hours. So more than 2*60 minutes.
flights %>% filter(dep_delay >= 120)
  1. Flew to Houston (IAH or HOU)
flights %>% filter(dest == "IAH" | dest == "HOU")

or

flights %>% filter(dest %in% c("IAH", "HOU"))
  1. Were operated by United, American, or Delta

Lets check the airlines dataframe for the codes for these airlines.

airlines
flights %>% filter(carrier %in% c("DL", "AA", "UA"))
  1. Departed in summer (July, August, and September)
flights %>% filter(month %in% c(7,8,9))
  1. Arrived more than two hours late, but didn’t leave late
flights %>% filter(dep_delay <= 0 & arr_delay > 2*60)
  1. Were delayed by at least an hour, but made up over 30 minutes in flight
flights %>% filter(dep_delay >= 60 & dep_delay - arr_delay > 30  )
  1. Departed between midnight and 6am (inclusive)

Note that midnight is 2400, not 0.

flights %>% filter(dep_time <= 600 | dep_time == 2400 )

2.

The between() function can be used like %in%.

The between() can be used with the months to filter the rows from July, August, September.

flights %>% filter(between(month, 7, 9))

5.3.1

2.

Sort flights to find the most delayed flights. Find the flights that left earliest.

The five most delayed flights.

flights %>% arrange(desc(dep_delay)) %>%
  head(5)

The five flights that left the earliest.

flights %>% arrange(dep_delay) %>%
  head(5)
LS0tCnRpdGxlOiAnU3RhdC4gNDUwIFNlY3Rpb24gMSBvciAyOiBIb21ld29yayAzJwpvdXRwdXQ6CiAgd29yZF9kb2N1bWVudDogZGVmYXVsdAogIGh0bWxfbm90ZWJvb2s6IGRlZmF1bHQKICBwZGZfZG9jdW1lbnQ6IGRlZmF1bHQKICBodG1sX2RvY3VtZW50OgogICAgZGZfcHJpbnQ6IHBhZ2VkCi0tLQoKKipQcm9mLiBFcmljIEEuIFN1ZXNzKioKClNvIGhvdyBzaG91bGQgeW91IGNvbXBsZXRlIHlvdXIgaG9tZXdvcmsgZm9yIHRoaXMgY2xhc3M/CgotIEZpcnN0IHRoaW5nIHRvIGRvIGlzIHR5cGUgYWxsIG9mIHlvdXIgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2JsZW1zIHlvdSBkbyBpbiB0aGUgdGV4dCBwYXJ0IG9mIHlvdXIgUiBOb3RlYm9vay4KLSBTZWNvbmQgdGhpbmcgdG8gZG8gaXMgdHlwZSBhbGwgb2YgeW91ciBSIGNvZGUgaW50byBSIGNodW5rcyB0aGF0IGNhbiBiZSBydW4uCi0gSWYgeW91IGxvYWQgdGhlIHRpZHl2ZXJzZSBpbiBhbiBSIE5vdGVib29rIGNodW5rLCBiZSBzdXJlIHRvIGluY2x1ZGUgdGhlICJtZXNzYWdlID0gRkFMU0UiIGluIHRoZSB7cn0sIHNvIHtyIG1lc3NhZ2UgPSBGQUxTRX0uCi0gTGFzdCB0aGluZyBpcyB0byBzcGVsbCBjaGVjayB5b3VyIFIgTm90ZWJvb2suICBFZGl0ID4gQ2hlY2sgU3BlbGxpbmcuLi4gb3IgaGl0IHRoZSBGNyBrZXkuCgpIb21ld29yayAzOgoKICAgICBSZWFkOiBDaGFwdGVyIDUKICAgICBEbyA1LjIuNCBFeGVyY2lzZXMgMSwgMiwKICAgICBEbyA1LjMuMSBFeGVyaWNpc2UgMgoKCmBgYHtyIG1lc3NhZ2U9RkFMU0V9CmxpYnJhcnkodGlkeXZlcnNlKQpgYGAKCiMgNS4yLjQKCiMjIDEuIAoKVGhpcyBwcm9ibGVtIGxvb2tzIGF0IHRoZSBueWNmbGlnaHRzMTMgZGF0YSBzZXQuCgpgYGB7cn0KbGlicmFyeShueWNmbGlnaHRzMTMpCgpmbGlnaHRzCmBgYAoKVGhlc2UgcXVlc3Rpb25zIHJlbGF0ZSB0byBmaW5kaW5nIHRoZSBmbGlnaHRzIHRoYXQgbWVldCB0aGUgY29uZGl0aW9ucyBzcGVjaWZpZWQuICAKCgpgYGB7cn0KaGVscChmbGlnaHRzKQpgYGAKCk5vdGUgdGhhdCBkZXBfZGVsYXkgaXMgaW4gbWludXRlcy4KCgoxLiBIYWQgYW4gYXJyaXZhbCBkZWxheSBvZiB0d28gb3IgbW9yZSBob3Vycy4gIFNvIG1vcmUgdGhhbiAyKjYwIG1pbnV0ZXMuCgpgYGB7cn0KZmxpZ2h0cyAlPiUgZmlsdGVyKGRlcF9kZWxheSA+PSAxMjApCmBgYAoKMi4gRmxldyB0byBIb3VzdG9uIChJQUggb3IgSE9VKQoKYGBge3J9CmZsaWdodHMgJT4lIGZpbHRlcihkZXN0ID09ICJJQUgiIHwgZGVzdCA9PSAiSE9VIikKYGBgCgpvcgoKYGBge3J9CmZsaWdodHMgJT4lIGZpbHRlcihkZXN0ICVpbiUgYygiSUFIIiwgIkhPVSIpKQpgYGAKCjMuIFdlcmUgb3BlcmF0ZWQgYnkgVW5pdGVkLCBBbWVyaWNhbiwgb3IgRGVsdGEKCkxldHMgY2hlY2sgdGhlIGFpcmxpbmVzIGRhdGFmcmFtZSBmb3IgdGhlIGNvZGVzIGZvciB0aGVzZSBhaXJsaW5lcy4KCmBgYHtyfQphaXJsaW5lcwpgYGAKCgpgYGB7cn0KZmxpZ2h0cyAlPiUgZmlsdGVyKGNhcnJpZXIgJWluJSBjKCJETCIsICJBQSIsICJVQSIpKQpgYGAKCjQuIERlcGFydGVkIGluIHN1bW1lciAoSnVseSwgQXVndXN0LCBhbmQgU2VwdGVtYmVyKQoKYGBge3J9CmZsaWdodHMgJT4lIGZpbHRlcihtb250aCAlaW4lIGMoNyw4LDkpKQpgYGAKCjUuIEFycml2ZWQgbW9yZSB0aGFuIHR3byBob3VycyBsYXRlLCBidXQgZGlkbuKAmXQgbGVhdmUgbGF0ZQoKYGBge3J9CmZsaWdodHMgJT4lIGZpbHRlcihkZXBfZGVsYXkgPD0gMCAmIGFycl9kZWxheSA+IDIqNjApCmBgYAoKNi4gV2VyZSBkZWxheWVkIGJ5IGF0IGxlYXN0IGFuIGhvdXIsIGJ1dCBtYWRlIHVwIG92ZXIgMzAgbWludXRlcyBpbiBmbGlnaHQKCmBgYHtyfQpmbGlnaHRzICU+JSBmaWx0ZXIoZGVwX2RlbGF5ID49IDYwICYgZGVwX2RlbGF5IC0gYXJyX2RlbGF5ID4gMzAgICkKYGBgCgo3LiBEZXBhcnRlZCBiZXR3ZWVuIG1pZG5pZ2h0IGFuZCA2YW0gKGluY2x1c2l2ZSkKCk5vdGUgdGhhdCBtaWRuaWdodCBpcyAyNDAwLCBub3QgMC4KCmBgYHtyfQpmbGlnaHRzICU+JSBmaWx0ZXIoZGVwX3RpbWUgPD0gNjAwIHwgZGVwX3RpbWUgPT0gMjQwMCApCmBgYAoKClxuZXdwYWdlCgojIyAyLgoKVGhlIGJldHdlZW4oKSBmdW5jdGlvbiBjYW4gYmUgdXNlZCBsaWtlICVpbiUuCgpUaGUgYmV0d2VlbigpIGNhbiBiZSB1c2VkIHdpdGggdGhlIG1vbnRocyB0byBmaWx0ZXIgdGhlIHJvd3MgZnJvbSBKdWx5LCBBdWd1c3QsIFNlcHRlbWJlci4KCmBgYHtyfQpmbGlnaHRzICU+JSBmaWx0ZXIoYmV0d2Vlbihtb250aCwgNywgOSkpCmBgYAoKXG5ld3BhZ2UKCiMgNS4zLjEKCiMgMi4gCgpTb3J0IGZsaWdodHMgdG8gZmluZCB0aGUgbW9zdCBkZWxheWVkIGZsaWdodHMuIEZpbmQgdGhlIGZsaWdodHMgdGhhdCBsZWZ0IGVhcmxpZXN0LgoKVGhlIGZpdmUgbW9zdCBkZWxheWVkIGZsaWdodHMuCgpgYGB7cn0KZmxpZ2h0cyAlPiUgYXJyYW5nZShkZXNjKGRlcF9kZWxheSkpICU+JQogIGhlYWQoNSkKYGBgCgpUaGUgZml2ZSBmbGlnaHRzIHRoYXQgbGVmdCB0aGUgZWFybGllc3QuCgpgYGB7cn0KZmxpZ2h0cyAlPiUgYXJyYW5nZShkZXBfZGVsYXkpICU+JQogIGhlYWQoNSkKYGBgCgoKCgo=