如何从代码中的第一列获取正确的日期?
test <- data.frame(posixdate = c("2013-05-01 00:59:00", "2013-05-01 01:59:00", "2013-05-01 02:59:00", "2013-05-01 03:59:00"))
test$posixdate <- as.POSIXct(test$posixdate, format="%Y-%m-%d %H:%M:%S" )
test$date <- as.Date(test$posixdate)
上面的代码导致:
posixdate date
1 2013-05-01 00:59:00 2013-04-30
2 2013-05-01 01:59:00 2013-04-30
3 2013-05-01 02:59:00 2013-05-01
4 2013-05-01 03:59:00 2013-05-01
前两个日期不正确。我做错了什么? 如果as.Date()不是正确的函数,我怎样才能得到日期(没有小时,分钟,秒)?
提前致谢!
答案 0 :(得分:0)
尝试使用lubridate
包。这个对我有用。
library(lubridate)
as.Date(ymd_hms(test$posixdate))
[1] "2013-05-01" "2013-05-01" "2013-05-01" "2013-05-01"
答案 1 :(得分:0)