Voorspellen met gesimuleerde ARIMA
Nu je expert bent in het fitten van ARIMA‑modellen, kun je je vaardigheden inzetten voor voorspellen. Eerst werk je met gesimuleerde data.
We hebben 120 observaties gegenereerd uit een ARIMA(1,1,0)-model met AR-parameter 0,9. De data staan in y en de eerste 100 observaties staan in x. Deze observaties zijn alvast voor je geplot. Je gaat een ARIMA(1,1,0)-model fitten op de data in x en controleren of het model goed past. Gebruik daarna sarima.for() uit astsa om 20 perioden vooruit te voorspellen. Vergelijk vervolgens de voorspellingen met de daadwerkelijke data in y.
De basissynthax voor voorspellen is sarima.for(data, n.ahead, p, d, q) waarbij n.ahead een positief geheel getal is dat de voorspelhorizon aangeeft. De voorspelde waarden en hun standaardfouten worden geprint, de data worden in zwart geplot en de voorspellingen in rood, met twee grenzen op basis van de mean square prediction error als blauwe stippellijnen.
De package astsa is vooraf geladen en de data (x) en gedifferentieerde data (diff(x)) zijn geplot.
Deze oefening maakt deel uit van de cursus
ARIMA-modellen in R
Oefeninstructies
- Plot de steekproef-ACF en -PACF van de gedifferentieerde data om een model te bepalen.
- Gebruik
sarima()om een ARIMA(1,1,0) op de data te fitten. Bekijk de output van jesarima()-opdracht om de passing en modeldiagnostiek te beoordelen. - Gebruik
sarima.for()om 20 perioden vooruit te voorspellen. Vergelijk dit met de werkelijke waarden.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Plot P/ACF pair of differenced data
# Fit model - check t-table and diagnostics
# Forecast the data 20 time periods ahead
sarima.for(x, n.ahead = ___, p = ___, d = ___, q = ___)
lines(y)