Aan de slagGa gratis aan de slag

Reserveringen voor telefoontjes voorspellen

Een andere tijdreeks met meerdere seizoensperioden is calls, met 20 opeenvolgende dagen aan 5‑minutenbelvolumedata voor een grote Noord-Amerikaanse bank. Er zijn 169 5‑minutenintervallen op een werkdag, dus de wekelijkse seizoensfrequentie is 5 x 169 = 845. De wekelijkse seizoensinvloed is relatief zwak, dus je modelleert hier alleen dagelijkse seizoensinvloeden. calls is alvast in je werkruimte geladen.

De residuen slagen in dit geval nog steeds niet voor de white-noise-tests, maar hun autocorrelaties zijn heel klein, ook al zijn ze significant. Dat komt doordat de reeks zo lang is. Voor zulke lange reeksen is het vaak niet realistisch om residuen te hebben die voor alle tests slagen. Het effect van de overblijvende correlaties op de voorspellingen is verwaarloosbaar.

Deze oefening maakt deel uit van de cursus

Voorspellen in R

Cursus bekijken

Oefeninstructies

  • Plot de calls-data om de sterke dagelijkse en zwakke wekelijkse seizoensinvloeden te zien.
  • Stel de xreg-matrix in met orde 10 voor dagelijkse seizoensinvloeden en 0 voor wekelijkse seizoensinvloeden. Let op: als je je vector onjuist opgeeft, kan je sessie verlopen!
  • Pas een dynamisch regressiemodel fit met auto.arima() toe met seasonal = FALSE en stationary = TRUE.
  • Controleer de residuen van het gefitte model.
  • Maak de voorspellingen voor 10 werkdagen vooruit als fc en plot deze vervolgens. De beschrijving van de oefening helpt je de juiste waarde van h te bepalen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Plot the calls data
___

# Set up the xreg matrix
xreg <- fourier(___, K = ___)

# Fit a dynamic regression model
fit <- auto.arima(___, xreg = ___, ___, ___)

# Check the residuals
___

# Plot forecasts for 10 working days ahead
fc <- forecast(fit, xreg =  fourier(calls, c(10, 0), h = ___))
___
Code bewerken en uitvoeren