English · PDF 273

计算取整日期与未取整日期之间的差异特别有用。
你还可以使用每个访问器函数来设置日期/时间的各个成分:
(datetime <- ymd_hms("2016-07-08 12:34:56")) #> [1] "2016-07-08 12:34:56 UTC" year(datetime) <- 2020 datetime #> [1] "2020-07-08 12:34:56 UTC" month(datetime) <- 01 datetime #> [1] "2020-01-08 12:34:56 UTC" hour(datetime) <- hour(datetime) + 1
另外,你也可以不直接原地修改,而是使用 update() 创建一个新的日期时间。这还允许你一次设置多个值:
update(datetime, year = 2020, month = 2, mday = 2, hour = 2) #> [1] "2020-02-02 02:34:56 UTC"
如果设置的值过大,就会发生进位:
ymd("2015-02-01") %>% update(mday = 30) #> [1] "2015-03-02" ymd("2015-02-01") %>%