[英]Non uniform, multivariable time series in R.
我的数据集的一部分是:
> df
v1 v2 v3 v4
1 1 0 1 03-11-2013
2 5 2 0 09-11-2013
3 4 2 0 12-11-2013
4 2 6 1 14-11-2013
5 3 0 1 21-11-2013
6 0 0 1 24-11-2013
其中v4是非统一日期(实际数据明显更大)。 目的是基于预先存在的信息来估计“ v1”的下一个值(在这个非常简化的数据集中,观测值7)。 最简单的方法可能是仅使用v1的先前值,但是v1,v2和v3可能相关。 因此,理想的情况是利用所有信息。
我在R中尝试了package Forecast(),但发现处理非均匀时间序列有困难。 我也遇到过arima()函数/模型,但似乎仍然只能使用统一的时间序列(?)。 因此,问题将是:
如何基于R中多个变量(包括我要预测的变量)的不均匀历史信息来预测某个变量的值?
对数据进行插值,然后尝试使用向量自回归模型,或者不理会v2和v3,而仅根据其(插值)历史预测v1。 这两个软件包的作者都有书籍以获取更多信息。
library(zoo)
z <- read.zoo(DF, index = 4, format = "%d-%m-%Y")
g <- zoo(, seq(start(z), end(z), "day")) # grid
zz <- na.spline(merge(z, g))
# alternative 1. forcast all variables for next 10 days
library(vars)
fm <- VAR(zz)
predict(fm) # AR prediction of next 10 days
# alternative 2. univariate forecast disregarding v2 and v3
library(forecast)
forecast(zz$v1)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.