如何从日期时间创建日期(使用 lubridate)?
How to create date from datetime (using lubridate)?
假设我创建了一个包含日期和时间的变量:
a <- ymd_hms("2014-01-01 12:23:34")
如何创建另一个只有日期的变量?也就是说,我应该如何将 a
的值转换为与 b
的值相同,其中 b
是
b <- ymd("2014-01-01")
你可以直接使用round_date
round_date(a, "day")
[1] "2014-01-02 UTC"
编辑
不过你确实需要小心舍入时间。为了在这里完全等效,您需要使用 floor_date
.
identical(ymd("2014-01-01"), floor_date(a, "day"))
[1] TRUE
使用 date()
更短并且避免了任何舍入问题。
library(lubridate)
date(a)
[1] "2014-01-01"
假设我创建了一个包含日期和时间的变量:
a <- ymd_hms("2014-01-01 12:23:34")
如何创建另一个只有日期的变量?也就是说,我应该如何将 a
的值转换为与 b
的值相同,其中 b
是
b <- ymd("2014-01-01")
你可以直接使用round_date
round_date(a, "day")
[1] "2014-01-02 UTC"
编辑
不过你确实需要小心舍入时间。为了在这里完全等效,您需要使用 floor_date
.
identical(ymd("2014-01-01"), floor_date(a, "day"))
[1] TRUE
使用 date()
更短并且避免了任何舍入问题。
library(lubridate)
date(a)
[1] "2014-01-01"