我正在尝试评估我用R生成的SARIMA模型的拟合和预测,但是,一旦我尝试将拟合模型与原始系列一起绘制,我收到来自R的错误消息。我不明白为什么
以下是代码
fit4<-Arima(fatturati, order=c(1,0,0), seasonal=c(1,1,0))
fit4
Series: fatturati
ARIMA(1,0,0)(1,1,0)[12]
Coefficients:
ar1 sar1
0.4749 -0.6135
s.e. 0.1602 0.1556
sigma^2 estimated as 4.773e+10: log likelihood=-454.47
AIC=914.94 AICc=915.76 BIC=919.43
tsdisplay(residuals(fit4))
Box.test(residuals(fit4), lag=16, fitdf=4, type="Ljung")
Box-Ljung test
data: residuals(fit4)
X-squared = 10.15, df = 12, p-value = 0.6028
plot(fit4$x,col="red")
lines(fitted(fit4),col="blue")
Error in NextMethod(.Generic) : cannot assign 'tsp' to zero-length vector
我该如何管理?
***** UPDATE ****** 所有包都会更新。 一切似乎都很好,但一旦我尝试绘制拟合数据,我收到相同的错误。 这里是代码
fatturati<-read.ts("F:/dati.csv", header=TRUE, start=2013, frequency=12)
ft=fatturati
ft
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2013 397677 642630 1259336 1220071 1883674 1444910 783430 422713 1037768 1046658 1210702 658286
2014 482081 822558 1179159 848265 1235270 1219770 461692 452579 1076500 770226 646424 872482
2015 705441 863377 1104483 944880 1379004 1230724 922313 225545 1064701 721959 728487 738779
2016 586530 939034 1632165 1337850 1697783 1290279 462190 520914 1296145
class(ft)
[1] "ts"
arima_fatturati<-Arima(fatturati, order=c(1,0,0), seasonal=c(1,0,0))
arima_fatturati
Series: fatturati
ARIMA(1,0,0)(1,0,0)[12] with non-zero mean
Coefficients:
ar1 sar1 intercept
0.3405 0.7370 977132.9
s.e. 0.1408 0.0973 133573.8
sigma^2 estimated as 6.497e+10: log likelihood=-627.25
AIC=1262.5 AICc=1263.5 BIC=1269.72
plot(arima_fatturati$x, col="red")
lines(fitted.Arima(arima_fatturati), col="blue")
Error in NextMethod(.Generic) : cannot assign 'tsp' to zero-length vector
答案 0 :(得分:0)
使用forecast
包中包含的数据集,我对以下代码没有任何问题:
library(forecast)
arima_wind = Arima(y = wineind, order = c(1, 0, 1), seasonal = c(1, 1, 0))
plot(arima_wind$x)
lines(fitted.Arima(arima_wind), col = "blue")
更新forecast
的版本,您必须确保它不是版本问题,但我的猜测是,这与您的特定ts
对象有关。您可能希望发布重现问题的数据。
答案 1 :(得分:0)
您不必使用fitted()
来提取拟合值。您应该可以使用$fitted
直接访问它们,例如fit4$fitted
。