首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >高频时间序列模型的拟合及短期预测

高频时间序列模型的拟合及短期预测
EN

Stack Overflow用户
提问于 2019-09-20 08:02:27
回答 1查看 783关注 0票数 2

我有一个值的时间序列,频率相当高(15分钟)。timeseries没有缺少值,并显示了一些每日和每周的周期性组件。

我试图在R中使用fable对其建模,但我似乎找不到任何像样的结果,我想知道我是否做错了什么。

下面是我的代码,使用一个可以下载的示例数据集:

代码语言:javascript
复制
library(tsibble)
library(fable)
library(dplyr)
library(lubridate)

download.file("https://srv-file7.gofile.io/download/9yo0cg/so_data.csv", destfile = "so_data.csv", method = "wget")
csv = read.csv("so_data.csv") %>%
    mutate(time = ymd_hms(time)) %>%
    as_tsibble(index = time)

# Take a look
csv %>% summary
csv %>% autoplot

这是时间序列:

正如你所看到的,它是相当有规律的,有很好的日常周期。让我们尝试使用一些模型的默认设置对其进行建模:

代码语言:javascript
复制
csv %>%
    model(
        ets = ETS(value),
        arima = ARIMA(value),
        snaive = SNAIVE(value)
    ) %>%
    forecast(h = "1 week") %>%
    autoplot(csv)

所有的人都失败得很:

我对这个过程的理解有限,这显然是错误的,在这种情况下,默认值是没有用的。然而,我试着调整它们,不幸的是,我无法捕捉到更好的东西。总之,由于我是这一领域的一名菜鸟,我不明白这是否是由于:

  • 我没有设置适当的默认参数(我应该深入研究fable参考书)。
  • 我所掌握的有限数据(短时间序列,仅几个月)
  • 不适用于快速变化的数据的方法(每日和每周循环模式)
  • 我代码中的问题
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-22 03:02:07

您的15分钟频率数据显示了多种季节性模式。这些模型产生了糟糕的质量预测,因为它们不是为了捕捉这些模式而设计的(所以它们不是)。

您的代码看起来很好,并且(在视觉上)数据似乎有一个合适的模型应该捕获的强大模式。

目前有两个更复杂的模型,与寓言工作,应该能够捕捉多个季节模式,给你更好的预测。它们是:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58024275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档