将日期和小时转换为XTS R

时间:2020-05-05 12:38:13

标签: r dataframe xts

我有这张消费表。我正在尝试将前两列转换为一个xts日期格式。

1   01.01.2016  00:00:00    26.27724
2   01.01.2016  01:00:00    24.99182
3   01.01.2016  02:00:00    23.53261
4   01.01.2016  03:00:00    22.46478
5   01.01.2016  04:00:00    22.00291
6   01.01.2016  05:00:00    21.95708
7   01.01.2016  06:00:00    22.20354
8   01.01.2016  07:00:00    21.84416

我尝试了代码belo并得到了该错误。

timestamp=format(as.POSIXct(paste(datecol,hourcol)), "%d/%m/%Y %H:%M:%S")

as.POSIXlt.character(x,tz,...)中的错误: 字符串不是标准的明确格式

日期是字符,小时是双格式。

1 个答案:

答案 0 :(得分:0)

如果您尝试合并日期和时间值以创建时间戳,我们可以在基本R中使用as.POSIXct

df$timestamp <- as.POSIXct(paste(df$datecol,df$hourcol), 
                          format = "%d.%m.%Y %T", tz = "UTC")

或使用lubridate

df$timestamp <- lubridate::dmy_hms(paste(df$datecol,df$hourcol))

或使用anytime

df$timestamp <- anytime::anytime(paste(df$datecol,df$hourcol))