suppressPackageStartupMessages(library("tidyverse"))
package 㤼㸱tidyverse㤼㸲 was built under R version 3.6.3
suppressPackageStartupMessages(library("lubridate"))
1. What happens if you parse a string that contains invalid dates?
ret <- ymd(c("2010-10-10", "bananas"))
1 failed to parse.
print(class(ret))
[1] "Date"
ret
[1] "2010-10-10" NA
It produces an NA and a warning message.
2. What does the tzone argument to today()
do? Why is it important?
It determines the time-zone of the date. Since different time-zones can have different dates, the value of today()
can vary depending on the time-zone specified.
3. Use the appropriate lubridate function to parse each of the following dates:
d1 <- "January 1, 2010"
d2 <- "2015-Mar-07"
d3 <- "06-Jun-2017"
d4 <- c("August 19 (2015)", "July 1 (2015)")
d5 <- "12/30/14"
mdy(d1)
[1] "2010-01-01"
ymd(d2)
[1] "2015-03-07"
dmy(d3)
[1] "2017-06-06"
mdy(d4)
[1] "2015-08-19" "2015-07-01"
mdy(d5)
[1] "2014-12-30"
LS0tDQp0aXRsZTogIkNyZWF0aW5nIGRhdGUvdGltZXMiDQpvdXRwdXQ6IA0KICBodG1sX25vdGVib29rOg0KICAgIHRvYzogdHJ1ZQ0KICAgIHRvY19mbG9hdDogdHJ1ZQ0KLS0tDQoNCmBgYHtyfQ0Kc3VwcHJlc3NQYWNrYWdlU3RhcnR1cE1lc3NhZ2VzKGxpYnJhcnkoInRpZHl2ZXJzZSIpKQ0Kc3VwcHJlc3NQYWNrYWdlU3RhcnR1cE1lc3NhZ2VzKGxpYnJhcnkoImx1YnJpZGF0ZSIpKQ0KYGBgDQoNCiMjIyAxLiBXaGF0IGhhcHBlbnMgaWYgeW91IHBhcnNlIGEgc3RyaW5nIHRoYXQgY29udGFpbnMgaW52YWxpZCBkYXRlcz8NCg0KYGBge3J9DQpyZXQgPC0geW1kKGMoIjIwMTAtMTAtMTAiLCAiYmFuYW5hcyIpKQ0KcHJpbnQoY2xhc3MocmV0KSkNCnJldA0KYGBgDQoNCkl0IHByb2R1Y2VzIGFuIE5BIGFuZCBhIHdhcm5pbmcgbWVzc2FnZS4NCg0KIyMjIDIuIFdoYXQgZG9lcyB0aGUgdHpvbmUgYXJndW1lbnQgdG8gYHRvZGF5KClgIGRvPyBXaHkgaXMgaXQgaW1wb3J0YW50Pw0KDQpJdCBkZXRlcm1pbmVzIHRoZSB0aW1lLXpvbmUgb2YgdGhlIGRhdGUuIFNpbmNlIGRpZmZlcmVudCB0aW1lLXpvbmVzIGNhbiBoYXZlIGRpZmZlcmVudCBkYXRlcywgdGhlIHZhbHVlIG9mIGB0b2RheSgpYCBjYW4gdmFyeSBkZXBlbmRpbmcgb24gdGhlIHRpbWUtem9uZSBzcGVjaWZpZWQuDQoNCiMjIyAzLiBVc2UgdGhlIGFwcHJvcHJpYXRlIGx1YnJpZGF0ZSBmdW5jdGlvbiB0byBwYXJzZSBlYWNoIG9mIHRoZSBmb2xsb3dpbmcgZGF0ZXM6DQoNCmBgYHtyfQ0KZDEgPC0gIkphbnVhcnkgMSwgMjAxMCINCmQyIDwtICIyMDE1LU1hci0wNyINCmQzIDwtICIwNi1KdW4tMjAxNyINCmQ0IDwtIGMoIkF1Z3VzdCAxOSAoMjAxNSkiLCAiSnVseSAxICgyMDE1KSIpDQpkNSA8LSAiMTIvMzAvMTQiDQpgYGANCg0KYGBge3J9DQptZHkoZDEpDQp5bWQoZDIpDQpkbXkoZDMpDQptZHkoZDQpDQptZHkoZDUpDQpgYGA=