我有一个表(标签),其中包含一个时间戳(ts)列,自格林威治标准时间1970年1月1日起格式化为秒。我正在尝试创建一个日期列,将时间戳从秒转换为日期和时间EST。
R的建议代码是:
tags$date<-strptime(tags$ts, "%Y-%m-%d")
tags$date<-as.POSIXct(tags$date)
但是当我这样做时,tags$date
出现了NA。对于我可能做错的任何建议?感谢。
答案 0 :(得分:4)
你应该让我们as.POSIXct
代替:
tags$date <- as.POSIXct(tags$ts, origin="1970-01-01", tz="US/New York")
strptime
在字符表示和日期之间转换,而不是在时间戳和日期之间。
答案 1 :(得分:1)
这是lubridate
版本。当我们使用as_datetime
时,我们不需要明确指定原点,因为它默认为所需的原点。
lubridate::as_datetime(1507119276, tz='EST')
# [1] "2017-10-04 07:14:36 EST"