SES vs naive
In deze oefening pas je je kennis van trainings- en testsets, de functie subset() en de functie accuracy() toe, die je allemaal in Hoofdstuk 2 hebt geleerd, om SES- en naive-voorspellingen voor de marathon-data te vergelijken.
Je deed iets heel vergelijkbaars om de naive- en gemiddelde voorspellingen te vergelijken in een eerdere oefening “Evaluating forecast accuracy of non-seasonal methods”.
Laten we het proces doornemen:
- Importeer en laad eerst je data. Bepaal hoeveel van je data je wilt gebruiken voor training en hoeveel voor testen; de sets mogen niet overlappen.
- Maak met een subset van de data een trainingsset, die je als argument in je voorspellingsfunctie(s) gebruikt. Optioneel kun je ook een testset maken voor later gebruik.
- Bereken voorspellingen voor de trainingsset met de door jou gekozen voorspellingsfunctie(s), en zet
hgelijk aan het aantal waarden dat je wilt voorspellen; dit is ook de lengte van de testset. - Gebruik om de resultaten te bekijken de functie
accuracy()met de voorspelling als eerste argument en de oorspronkelijke data (of testset) als tweede. - Kies een maat in de output, zoals RMSE of MAE, om de voorspelling(en) te evalueren; een kleinere fout duidt op een hogere nauwkeurigheid.
De marathon-data is in je werkruimte geladen.
Deze oefening maakt deel uit van de cursus
Voorspellen in R
Oefeninstructies
- Gebruik
subset()om een trainingsset voormarathonte maken met alle jaren behalve de laatste 20, die je reserveert voor testen. - Bereken de SES- en naive-voorspellingen van deze trainingsset en sla ze respectievelijk op als
fcsesenfcnaive. - Bereken de nauwkeurigheidsmaten van de twee sets voorspellingen met de functie
accuracy()in je console. - Wijs de beste voorspellingen (ofwel
fcsesoffcnaive) op basis van RMSE toe aanfcbest.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create a training set using subset()
train <- ___(___, end = length(marathon) - ___)
# Compute SES and naive forecasts, save to fcses and fcnaive
fcses <- ses(___, h = ___)
fcnaive <- naive(___, h = ___)
# Calculate forecast accuracy measures
accuracy(___, ___)
accuracy(___, ___)
# Save the best forecasts as fcbest
fcbest <- ___