【发布时间】:2018-12-19 07:15:18
【问题描述】:
我有一张表,有两列 DATE 和 Q。
DATE Q
--------------------
2013-01-04 932
2013-01-05 409
2013-01-08 511
2013-01-11 121
2013-01-12 252
2013-01-13 201
2013-01-14 40
2013-01-15 66
2013-01-17 NA
2013-01-18 123
Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 10 obs. of 2 variables:
$ DATE: POSIXct, format: "2013-01-04" "2013-01-05" "2013-01-08" "2013-01-11" ...
$ Q: num 932 409 511 121 252 201 40 66 NA 123 ..
从数据中可以看出,频率是不规则的。第一列是转换为日期格式的数据,第二列是数字。所以我的意图是将这个表转换为时间序列对象,以便使用预测包进行进一步的预测。
那么任何人都可以帮我编写一些代码来将此表转换为 ts 对象吗?
【问题讨论】:
-
据我所知,
ts()函数要求您的数据具有特定的频率。对于不规则的时间序列,我强烈建议您先查看新的tsibble包,然后再查看fable包进行预测。这两个包是由同一作者与forecast包共同开发的。 - Rob J. Hyndman)。 pkg.earo.me/tsibble -
我已经用 tsibble 包进行了转换。所以现在我有了 tsiblle 对象。这意味着我有一列频率不规则,第二列有一些数字 Q。所以现在的问题是如何把这个和这个不规则auto.arima 中的频率?
-
ARIMA 模型是为均匀间隔的时间序列设计的,这意味着您无法将这样的模型拟合到您的数据中(这是不规则的)。我鼓励您研究卡尔曼滤波器或任何不规则时空序列模型。
标签: r time-series forecasting