이 질문에는 하나 이상의 심각한 오해가있을 수 있지만 계산을 올바르게하는 것이 아니라 시계열을 배우는 데 중점을 둡니다.
시계열의 적용을 이해하려고 할 때, 데이터의 비추 세화로 미래의 가치를 예측할 수없는 것처럼 보입니다. 예를 들어 패키지의 gtemp
시계열은 astsa
다음과 같습니다.
예측 된 미래 가치를 표시 할 때 지난 수십 년간 상승 추세를 고려해야합니다.
그러나 시계열 변동을 평가하려면 데이터를 고정 시계열로 변환해야합니다. 나는 (I이 때문에 중간의 수행 추측 차이점과 ARIMA 과정으로 모델링하는 경우 1
에서 order = c(-, 1, -)
와 같이) :
require(tseries); require(astsa)
fit = arima(gtemp, order = c(4, 1, 1))
pred = predict(fit, n.ahead = 50)
ts.plot(gtemp, pred$pred, lty = c(1,3), col=c(5,2))
특정 ARIMA 매개 변수의 실제 최적화를 다루지 않아도 플롯의 예측 부분에서 상승 추세를 어떻게 복구 할 수 있습니까?
나는 어딘가에 OLS "숨겨진"것이 있다고 생각하는데, 이것은 비정규 성을 설명합니까?
나는 패키지 drift
의 Arima()
기능에 통합되어 forecast
그럴듯한 음모 를 표현할 수있는 개념을 만났다.
par(mfrow = c(1,2))
fit1 = Arima(gtemp, order = c(4,1,1),
include.drift = T)
future = forecast(fit1, h = 50)
plot(future)
fit2 = Arima(gtemp, order = c(4,1,1),
include.drift = F)
future2 = forecast(fit2, h = 50)
plot(future2)
계산 과정에서 더 불투명합니다. 트렌드가 플롯 계산에 어떻게 통합되는지에 대한 이해를 목표로하고 있습니다. 문제 중 하나입니다 거기 어떤 drift
에서 arima()
(소문자)?
이와 비교하여 dataset을 사용하면 데이터 집합 AirPassengers
의 끝점을 넘어 예측 된 승객 수는 다음과 같은 상승 추세를 설명합니다.
코드 입니다 :
fit = arima(log(AirPassengers), c(0, 1, 1), seasonal = list(order = c(0, 1, 1), period = 12))
pred <- predict(fit, n.ahead = 10*12)
ts.plot(AirPassengers,exp(pred$pred), log = "y", lty = c(1,3))
말이되는 플롯을 렌더링합니다.