使用R进行多变量预测(包MTS和portes)

时间:2015-12-22 15:01:49

标签: r

我正在尝试模拟矢量/多变量ARMA流程并进行预测。

我知道我可以使用 VARMAsim (在包MTS中)或 varima.sim (在包portes中)进行模拟。假设我模拟长度为n = 300的VARMA Z =(Z1,Z2)。可以使用invertQ(在包装端口中)检查固定和可逆性。

使用函数 VARMA (在MTS包中)我可以使用VARMA模型拟合模拟数据Z.输出给出了“AR系数矩阵”和“MA系数矩阵”以及aic和bic。

我的问题是:

  1. 如何选择 p q 的订单,VARMA所需的功能是什么?
  2. 在单变量情况下,我们使用函数 预测(object,n.ahead,...) 来预测未来的值。在多变量情况下,哪个功能可以做到这一点?
  3. 谢谢

    修改

    1. 选择AR和MA订单
    2. 在MTS包中,我找到了Eccm(扩展互相关矩阵)函数,它可用于识别AR和MA顺序。该函数给出了向量时间序列的多元Ljung-Box统计量的p值。

      Eccm(zt, maxp = 5, maxq = 6, include.mean = FALSE, rev = TRUE)
      

      但我不知道如何从输出表中选择p值?例如,我有下表(抱歉,我不知道如何制作一张桌子):

      扩展互相关矩阵的p值表:
      栏目:MA订单
      行:AR订单
              -------- 0 -------- 1 ------- 2 ------- 3 ------ 4 ------ 5 ------ 6
      0 --- 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
      1 --- 0.0000 0.6159 0.8570 0.9127 0.7225 0.4764 0.7629
      2 --- 0.3262 0.6724 0.8356 0.1448 0.2728 0.9801 0.9848
      3 --- 0.9180 0.9882 0.4939 0.4119 0.8937 0.9934 0.9984
      4 --- 0.9473 0.9340 0.8216 0.9739 0.9864 0.9996 0.9962
      5 --- 0.9861 0.9331 0.9983 1.0000 0.9937 0.9802 0.9934

      我应该选哪一个?为什么?

      1. 在同一个包(MTS)中,我找到了函数VARMApred(...),它应该是我们上面的预测函数的多变量版本。

1 个答案:

答案 0 :(得分:0)

不是真正的答案但是,你试过topepo吗? http://topepo.github.io/caret/Multivariate_Adaptive_Regression_Splines.html