es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Previsiones de matrices no conformables.

Hola a todos, estoy tratando de calcular las estadísticas de precisión para series de tiempo jerárquicas usando el paquete hts, pero obtengo un error que dice “Error in x – fcasts: matrices no conformables”.

library(hts)
abc <- matrix(sample(1:100, 32*140, replace=TRUE), ncol=32)
colnames(abc) <- c(
  paste0("A0",1:5), 
  paste0("B0",1:9),"B10",
  paste0("C0",1:8),
  paste0("D0",1:5),
  paste0("E0",1:4)
)
abc <- ts(abc, start=2019, frequency=365.25/7)
x <- hts(abc, characters = c(1,2))

data <- window(x, start = 2019.000, end = 2021.166)
test <- window(x, start = 2021.185)
fcasts <- forecast(data, h = 20, method = "bu")
accuracy(fcasts, test)
accuracy(fcasts test, levels = 1)

Luego, el mensaje de error es:

> data <- window(x, start = 2019.000, end = 2021.166)
> test <- window(x, start = 2021.185)
> fcasts <- forecast(data, h = 20, method = "bu")
Hubo 32 advertencias (usar warnings() para verlas)
> accuracy(fcasts, test)
Error in x - fcasts : matrices no conformables
> accuracy(fcasts, test, levels = 1)
Error in x - fcasts : matrices no conformables

Gracias

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Gracias por contactar. El mensaje de error “non-conformable arrays” significa que las dimensiones de las dos matrices que estás tratando de restar o combinar no son compatibles. En este caso, parece que las dimensiones de los valores pronosticados y los datos de prueba no coinciden.

    Para solucionar este problema, puedes intentar cambiar las fechas de inicio y final de los datos de prueba para que coincidan con el horizonte de pronóstico. Por ejemplo, en lugar de:

    test <- window(x, start = 2021.185)
    

    Podrías usar:

    test <- window(x, start = 2021.185, end = 2022.185)
    

    Esto creará un conjunto de datos de prueba que incluye el horizonte de pronóstico de 20 períodos.

    Luego, puedes intentar calcular las medidas de precisión de nuevo usando los datos de prueba actualizados:

    accuracy(fcasts, test)
    

    ¡Espero que esto ayude! Por favor, hazme saber si tienes alguna otra pregunta.

Comments are closed.