IniziaInizia gratis

ETS vs naive stagionale

Qui confronterai le previsioni ETS con quelle naive stagionali per 20 anni di cement, che contiene la produzione trimestrale di cemento, usando la cross-validation su serie temporali per 4 passi avanti. Poiché l'esecuzione richiede un po' di tempo, nel tuo workspace sarà disponibile una versione ridotta della serie cement.

Il secondo argomento di tsCV() deve restituire un oggetto forecast, quindi ti serve una funzione che adatti un modello e restituisca le previsioni. Ricorda:

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

In questo esercizio userai una funzione di previsione già esistente e un'altra che è stata creata per te. Ricorda: a volte i metodi semplici funzionano meglio di quelli più sofisticati!

Questo esercizio fa parte del corso

Previsioni in R

Visualizza il corso

Istruzioni dell'esercizio

  • Una funzione per restituire previsioni ETS, fets(), è stata scritta per te.
  • Applica tsCV() sia per i metodi ETS sia per quello naive stagionale ai dati cement con un orizzonte di previsione pari a 4. Usa le funzioni fets appena create ed snaive già esistente come argomento della funzione di previsione per e1 ed e2, rispettivamente.
  • Calcola il MSE degli errori sui 4 passi risultanti e rimuovi i valori mancanti. Le espressioni per calcolare l'MSE ti sono state fornite, ma non i secondi argomenti opzionali (li hai già usati in precedenza).
  • Salva il miglior MSE come bestmse. Puoi semplicemente copiare l'intera riga di codice che genera il miglior MSE dall'istruzione precedente.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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 <- ___
Modifica ed esegui il codice