Uso de tsCV() para la validación cruzada en series temporales
La función tsCV() calcula los errores de validación cruzada en series temporales. Requiere que especifiques la serie temporal, el método de pronóstico y el horizonte de predicción. Este es el ejemplo usado en el vídeo:
> e = tsCV(oil, forecastfunction = naive, h = 1)
Aquí, usarás tsCV() para calcular y representar los valores de MSE hasta 8 pasos hacia delante, junto con el método naive() aplicado a los datos de goog. El ejercicio utiliza gráficos de ggplot2, con los que puede que no estés familiarizado, pero hemos proporcionado suficiente código para que puedas completar el resto.
Asegúrate de consultar las diapositivas sobre tsCV() en la lección. Los datos goog ya se han cargado en tu espacio de trabajo.
Este ejercicio forma parte del curso
Forecasting en R
Instrucciones del ejercicio
- Usando los datos
googy pronosticando con la funciónnaive(), calcula los errores validados cruzadamente hasta 8 pasos hacia delante. Asigna el resultado ae. - Calcula los valores de MSE para cada horizonte de pronóstico y elimina los valores ausentes en
eespecificando el segundo argumento. Se ha proporcionado la expresión para calcular el MSE. - Representa los valores de MSE resultantes (
y) frente al horizonte de pronóstico (x). Piensa en cómo funcionan las funciones. Si se proporcionaMSE = mseen la lista de argumentos de una función, entoncesmsedebe referirse a un objeto que existe en tu espacio de trabajo fuera de la función, mientras queMSEes la variable que hace referencia a ese objeto dentro de tu función.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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()