将新数据行添加到现有数据集(预测),我得到错误的结果行数不是向量长度的倍数(arg 2)

时间:2015-04-09 04:38:18

标签: arrays r forecasting

我有一个包含3个变量的数据集,然后我运行了一个VAR(2)并得到了它的预测。现在我只想添加'对原始数据的预测结果,然而,我似乎无法让cbind工作(我查看了合并和附加但我不能得到它们。

那么,我如何只使用原始数据集包含预测?

我拥有的是:

        data(Model)                    #which is my dataset with data
1980:Q2 to 2014:Q2 [dates are my rows and then I have 3 columns)
        library(MTS)                   #the package I am using to get VAR
    V2= VAR(usmacro, p=2)              #running the VAR(2)
    FC2=VARpred(model=V2, h=4)         #running forecast

现在我正在尝试将FC2的预测结果添加到我的模型'原始数据。

我的FC2输出是:

       sho   tan    tba
[1,] 3.688 1.498 0.1272
[2,] 3.952 1.625 0.3119
Standard Errors of predictions:  
      [,1]  [,2]   [,3]
[1,] 3.520 1.519 0.6391
[2,] 3.704 1.743 0.9873
Root mean square errors of predictions:  
      [,1]  [,2]   [,3]
[1,] 3.566 1.539 0.6474
[2,] 4.804 2.861 2.2302

现在我试过了:

Fc2=data.frame(FC2)     #turn output into a dataframe
FC3=Fc2[,(1:3)]         # with this line I am extracting only the first  3 columns I want
NewModel=cbind(Model,FC3)  #this should give me the new matrix, just with the three new rows added at the end.

但是,当我运行它时,我收到以下错误: 警告信息: 在cbind(usmacro,VP22):   结果行数不是向量长度的倍数(arg 2)

我的模型数据(尾部)显示:

[264,]  2.705383 1.433774 0.09
[265,]  1.750523 1.068212 0.05
[266,]  4.418425 1.630659 0.03
[267,]  3.439430 1.411608 0.06
[268,] -2.130694 1.328627 0.05
[269,]  3.874164 1.964367 0.03

我只想将这些预测行添加到模型数据中,如行270和271。

[1,] 3.688 1.498 0.1272
[2,] 3.952 1.625 0.3119

有关如何使这项工作的任何建议?

0 个答案:

没有答案