2013-04-17 40 views
0

我最近更新了forecast()版本4.03,下面示例代碼的最後一行(第4行)現在給出了一條錯誤消息(如底部所示)。請注意,第4行中的forecast()是從第3行的auto.arima()輸出的(該函數沒有任何錯誤)。預測軟件包有變化嗎?使用組合預測(auto.arima())

另外,當第3行動物園術語使用以下代碼替換爲TS術語錯誤信息消失:

autarimod <- auto.arima(log(as.ts(zooinpdat))) ##New line 3 

所以,確實的預測(auto.arima())組合沒有更長時間接受動物園對象?如果是這樣的話,是否有更好的方法來處理這個比as.ts()方法?

library(zoo) 
library(forecast) 

inpdat <- c(353.03, 383.06, 407.9, 420.58, 345.96, 299.73, 286.42, 291.03, 
    297.71, 300.92, 272.13, 283.58, 331.72, 372.95, 404.78, 403.04, 
    374.57, 332.94, 284.37, 311.78, 307.27, 302.42, 283.52, 288.64, 
    337.19, 416.35, 418.65, 431.51, 407.74, 319.28, 297.33, 314.83, 
    290.49, 309.38, 294.5, 330.63, 371.2, 418.76, 440.05, 467.23, 
    384.32, 329.81, 300.4, 318.9, 355.06, 329.93, 293.43, 297.76, 
    340.42, 393.09, 395.2, 443.13, 396.45, 341.96, 307.95, 322, 339.63, 
    312.12, 304.31, 310.95) 

zooinpdat <- zooreg(inpdat, frequency=12, start=as.yearmon("May 1965")) 

autarimod <- auto.arima(log(zooinpdat)) ##Line 3 

for_arima <- forecast(autarimod, level=0.98, h=48) ##Line 4 


Error in .cbind.ts(list(e1, e2), c(deparse(substitute(e1))[1L], deparse(substitute(e2))[1L]), : 
not all series have the same frequency 

回答

3

預測軟件包專門用於ts對象,而不是zoo對象。某些功能可以與zoo對象配合使用,但不能保證。特別是,當我對包進行更改時,如果使用zoo對象,我從不檢查更改是否會導致問題。

您可以修復使用

zooinpdat <- as.ts(zooinpdat) 
你的錯誤