【发布时间】:2023-03-16 20:50:02
【问题描述】:
我有一个日期格式为2014-06-10 06:12:35 BRT 的数据框,我会比较日期以查看它们是否属于同一社交日(一天的凌晨 3:00 到凌晨 3:00)。但是当我尝试只选择一天时
format(as.Date(df$x,format="%Y-%m-%dT%H:%M:%SZ"), "%d"),
有时他会加 + 1,例如
2014-06-13 22:54:36 BRT 它显示14。
如果我试着花时间
format(as.Date(df$x,format="%Y-%m-%dT%H:%M:%SZ"), "%H")
它总是出现00。
我应该如何处理 R 中的日期?
【问题讨论】:
-
您的
format与"2014-06-13 22:54:36 BRT"不匹配。请修复。 -
您被时区差异所震惊 - 与此处相同的问题:stackoverflow.com/questions/17098862/… 确保
tz=匹配as.Date -
尝试例如
as.Date(as.POSIXct("2014-06-13 22:54:36", tz="Brazil/East"), tz="Brazil/East")并与as.Date(as.POSIXct("2014-06-13 22:54:36", tz="Brazil/East"))比较