IniziaInizia gratis

Uso di tsCV() per la cross-validation su serie temporali

La funzione tsCV() calcola gli errori della cross-validation per serie temporali. Richiede di specificare la serie temporale, il metodo di previsione e l’orizzonte di previsione. Ecco l’esempio usato nel video:

> e = tsCV(oil, forecastfunction = naive, h = 1)

Qui utilizzerai tsCV() per calcolare e tracciare i valori di MSE fino a 8 passi avanti, insieme al metodo naive() applicato ai dati goog. L’esercizio usa i grafici di ggplot2, che potresti non conoscere, ma abbiamo fornito abbastanza codice perché tu possa completare il resto.

Assicurati di consultare le diapositive su tsCV() nella lezione. I dati goog sono stati caricati nel tuo workspace.

Questo esercizio fa parte del corso

Previsioni in R

Visualizza il corso

Istruzioni dell'esercizio

  • Usando i dati goog e prevedendo con la funzione naive(), calcola gli errori con cross-validation fino a 8 passi avanti. Assegna il risultato a e.
  • Calcola i valori di MSE per ciascun orizzonte di previsione e rimuovi i valori mancanti in e specificando il secondo argomento. L’espressione per calcolare l’MSE è già fornita.
  • Traccia i valori di MSE risultanti (y) rispetto all’orizzonte di previsione (x). Ripassa il funzionamento delle funzioni. Se MSE = mse è fornito nell’elenco degli argomenti della funzione, allora mse dovrebbe riferirsi a un oggetto che esiste nel tuo workspace al di fuori della funzione, mentre MSE è la variabile che all’interno della tua funzione fa riferimento a questo oggetto.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Compute cross-validated errors for up to 8 steps ahead
e <- tsCV(___, forecastfunction = ___, h = ___)

# Compute the MSE values and remove missing values
mse <- colMeans(e^2, na.rm = ___)

# Plot the MSE values against the forecast horizon
data.frame(h = 1:8, MSE = mse) %>%
  ggplot(aes(x = h, y = ___)) + geom_point()
Modifica ed esegui il codice