使用R中的寓言来拟合均值预测模型

时间:2020-10-21 08:08:28

标签: r time-series tidyverse tsibble

(使用library(Ecdat)中的Orange数据集可重复性。)

我正在尝试使用R中的寓言包tsibble和Rable来拟合R中的均值预测模型。下面的代码非常简单,但是当我尝试运行最后一个模型部分时,即使遇到错误Error in NCOL(x) : object 'value' not found(即使尽管valueo_ts中的列名),但不确定为什么会这样。我从这里(https://robjhyndman.com/hyndsight/fable/)开始关注RJH教程。

如果Arima和均值预测模型相同,我将不胜感激,如果不是,我应该使用什么功能代替Arima。

library(Ecdat)
library(tsibble)
library(feasts)
library(tidyverse)
library(fable)

o<- Orange 

o_ts <- o %>% as_tsibble()

o_ts %>%
  filter(key=="priceoj") %>% 
  model(
    arima=arima(value))

2 个答案:

答案 0 :(得分:1)

<xsl:template match="@* | node()"> <xsl:copy> <xsl:apply-templates select="@* | node()"/> </xsl:copy> </xsl:template> <xsl:key name="dup" match="D" use="@id"/> <xsl:template match="D[not(generate-id() = generate-id(key('dup', @id)[1]))]"/> 来自import java.security.messageDigest //^ this needs to be upper-case 软件包。我相信您想要arima的{​​{1}}。

stats

答案 1 :(得分:0)

如果您的平均预测模型是指采用 mean of the last X observation(移动平均线),那么您应该使用 MEAN
虽然 ARIMA 确实指的是移动平均线(自动回归综合移动平均线),但这指的是预测误差的加权移动平均线 - 您可以在此处阅读更多信息:9.4 Moving average models in Forecasting: Principles and Practice

o <- Orange 

o_ts <- o %>% as_tsibble()

o_ts %>%
  filter(key == "priceoj") %>% 
  model(mean = MEAN(value))

如果要指定要取平均值的观测值数量,则需要添加特殊的 ~window(size = X)。否则将使用所有观察结果。

o_ts %>%
  filter(key == "priceoj") %>% 
  model(mean = MEAN(value ~ window(size = 3)))