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
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 daticementcon un orizzonte di previsione pari a 4. Usa le funzionifetsappena create edsnaivegià esistente come argomento della funzione di previsione pere1ede2, 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 <- ___