Kom igångKom igång gratis

ETS vs säsongsmässig naiv metod

Här ska du jämföra ETS-prognoser med den säsongsmässiga naiva metoden för 20 år av cement, som innehåller kvartalsvis cementproduktion. Du använder korsvalidering av tidsserier för 4 steg framåt. Eftersom det tar ett tag att köra finns en förkortad version av serien cement tillgänglig i din arbetsyta.

Det andra argumentet till tsCV() måste returnera ett prognos­objekt, så du behöver en funktion som anpassar en modell och returnerar prognoser. Kom ihåg:

> args(tsCV)
function (y, forecastfunction, h = 1, ...)

I den här övningen använder du både en befintlig prognosfunktion och en som redan är skapad åt dig. Kom ihåg att enkla metoder ibland fungerar bättre än mer avancerade!

Den här övningen är en del av kursen

Prognoser i R

Visa kurs

Övningsinstruktioner

  • En funktion för att returnera ETS-prognoser, fets(), har redan skrivits åt dig.
  • Tillämpa tsCV() för både ETS och den säsongsmässiga naiva metoden på cement-data med en prognoshorisont på 4. Använd den nyskapade funktionen fets respektive den befintliga snaive som prognosfunktionsargument för e1 och e2.
  • Beräkna MSE för de resulterande 4-stegsfelen och ta bort saknade värden. Uttrycken för att beräkna MSE finns redan, men de andra valfria argumenten saknas (du har använt dem tidigare).
  • Spara det bästa MSE som bestmse. Du kan helt enkelt kopiera hela kodraden som genererar det bästa MSE från föregående instruktion.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Function to return ETS forecasts
fets <- function(y, h) {
  forecast(ets(y), h = h)
}

# Apply tsCV() for both methods
e1 <- tsCV(___, ___, h = ___)
e2 <- tsCV(___, ___, h = ___)

# Compute MSE of resulting errors (watch out for missing values)
mean(e1^2, ___)
mean(e2^2, ___)

# Copy the best forecast MSE
bestmse <- ___
Redigera och kör kod