R 如何从POSIXct元素中提取正确的日期?

R 如何从POSIXct元素中提取正确的日期?,r,posix,posixct,as.date,R,Posix,Posixct,As.date,如何从代码的第一列中获取正确的日期 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(te

如何从代码的第一列中获取正确的日期

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)
前两个日期不正确。我做错了什么?

如果
as.Date()。它对我有用

library(lubridate)

as.Date(ymd_hms(test$posixdate))

[1] "2013-05-01" "2013-05-01" "2013-05-01" "2013-05-01"

试用
lubridate
包装。它对我有用

library(lubridate)

as.Date(ymd_hms(test$posixdate))

[1] "2013-05-01" "2013-05-01" "2013-05-01" "2013-05-01"

问题是时区

试试你的时区(可能不是格林尼治标准时间)


test$date2问题在于时区

试试你的时区(可能不是格林尼治标准时间)


test$date2您可能有夏令时问题。您需要为这两个项目指定时区,例如
test$posixdate谢谢!我想“CET”不会自动考虑夏令时吗?<代码> AS。日期<代码>忽略它。只要做
test$posixdate就好了!谢谢。如果你把你的解决方案作为一个答案发布,我可以接受。这是一个重复的,并且在前面的问题中已经有了答案,所以没有必要发布另一个类似的解决方案。不过,我承认对于一个新的R用户来说,这是一件很难理解的事情,所以我对你的问题投了赞成票。你可能有夏令时的问题。您需要为这两个项目指定时区,例如
test$posixdate谢谢!我想“CET”不会自动考虑夏令时吗?<代码> AS。日期<代码>忽略它。只要做
test$posixdate就好了!谢谢。如果你把你的解决方案作为一个答案发布,我可以接受。这是一个重复的,并且在前面的问题中已经有了答案,所以没有必要发布另一个类似的解决方案。不过,我承认,对于一个新的R用户来说,这是一件很难理解的事情,因此我对你的问题投了赞成票。谢谢!虽然我正在寻找一个类似的帖子,但我没有找到。谢谢!虽然我在寻找一个类似的帖子,但我没有找到。
test$date2 <- as.Date(test$posixdate, "GMT")