可以的,有个forecast的包,可以直接确定ARIMA模型的阶数
data <- read.csv("book1.xlsx",sep=",")
data
y <- ts(data$y,start = 1978,frequency = 1)
y
par(mfrow = c(1,1))
plot(data$y)
hist(data$y)
yd <- diff(log(y),1)
yd
plot(yd)
acf(yd,lag = 24)
pacf(yd,lag = 24)
fit <- arima(yd,order = c(1,0,1),method = 'ML')
fit
fit1 <- arima(yd,order = c(1,0,0),method = 'ML')
fit1
tsdiag(fit)
predict(fit,n.ahead = 3)$pred
library(forecast)
data$y
fit <- auto.arima(y)
fit
model <- arima(y,order = c(1,1,1))
accuracy(model)
accuracy(fit)
accuracy(fit1)
accuracy(fit2)
model$aic
fit$aic
forecast(fit,5)
plot(forecast(fit,5))
|