更改整个列的日期的 R 代码

问题描述

我正在尝试在 R 中编辑一列 POSIXlt 格式的日期时间值。我想通过小时的标量值添加或减去此列中的每一行以更改时区。

到目前为止我的代码看起来像:

df$Time_LMT <- strptime(paste(df$Time_LMT),format = "%Y-%m-%dT%H:%M:%s",tz = "UTC") 

str(df$Time_LMT)

df$Time_LMT = as.POSIXlt(df$Time_LMT,tz="Asia/Bangkok")

在上面的示例中,我试图将时区 UTC 转换为“亚洲/曼谷”时区,但是,time_LMT 列中的日期时间数据仍然与 UTC 时间相同,任何帮助是赞赏。

解决方法

试试:

library(lubridate)
with_tz(df$Time_LMT,"Asia/Bangkok")