r中时间序列数据的小时间隔问题

problem with hour interval in time series data in r

我是 R 的新手,我遇到了历史每小时电力负荷数据的问题,我的目标是 downloaded.My 基于 ARIMA 模型进行负荷预测 and/or 人工神经网络。

问题是数据采用以下日期时间(每小时)格式:

#>      DateTime                              Day_ahead_Load Actual_Load
#> [1,] "01.01.2015 00:00 - 01.01.2015 01:00" "6552"         "6100"     
#> [2,] "01.01.2015 01:00 - 01.01.2015 02:00" "6140"         "5713"     
#> [3,] "01.01.2015 02:00 - 01.01.2015 03:00" "5950"         "5553"

我尝试制作一个 POSIXct 对象,但没有成功:

as.Date.POSIXct(DateTime, format = "%d-%m-%Y %H:%M:%S", tz="EET", usetz=TRUE)

我收到的消息是它的格式不明确。非常感谢您对此的反馈。 提前谢谢你。

此致,

伊罗

你有两个主要问题。首先,您的 DateTime 列包含两个日期,因此您需要将该列一分为二。其次,您的格式参数有 - 个字符,但您的日期有 . 个字符。

我们可以使用 tidyrmutate 中的 separateacross 将列更改为 POSIXct

 library(dplyr)
 library(tidyr)
 data %>% 
   separate(DateTime, c("StartDateTime","EndDateTime"), " - ") %>%
   mutate(across(c("StartDateTime","EndDateTime"),
                 ~ as.POSIXct(., format = "%d.%m.%Y %H:%M",
                              tz="EET", usetz=TRUE)))
        StartDateTime         EndDateTime Day_ahead_Load Actual_Load
1 2015-01-01 00:00:00 2015-01-01 01:00:00           6552        6100
2 2015-01-01 01:00:00 2015-01-01 02:00:00           6140        5713
3 2015-01-01 02:00:00 2015-01-01 03:00:00           5950        5553