24 votos

Estadística de Ljung-Box para residuos ARIMA en R: resultados confusos de las pruebas

Tengo una serie temporal que intento predecir, para la que he utilizado el modelo estacional ARIMA(0,0,0)(0,1,0)[12] (=fit2). Es diferente de lo que R sugirió con auto.arima (R calculó que ARIMA(0,1,1)(0,1,0)[12] sería un mejor ajuste, lo llamé fit1). Sin embargo, en los últimos 12 meses de mi serie temporal mi modelo (fit2) parece ajustarse mejor (estaba crónicamente sesgado, he añadido la media residual y el nuevo ajuste parece ajustarse mejor a la serie temporal original. Aquí está el ejemplo de los últimos 12 meses y MAPE para los 12 meses más recientes para ambos ajustes:

fit1, fit2 and original data

La serie temporal tiene este aspecto:

original time series

Hasta aquí todo bien. He realizado el análisis residual para ambos modelos, y aquí está la confusión.

El acf(resid(fit1)) se ve muy bien, con mucho ruido blanco:

acf of fit1

Sin embargo, la prueba de Ljung-Box no parece buena para , por ejemplo, 20 rezagos:

    Box.test(resid(fit1),type="Ljung",lag=20,fitdf=1)

Obtengo los siguientes resultados:

    X-squared = 26.8511, df = 19, p-value = 0.1082

A mi entender, esta es la confirmación de que los residuos no son independientes (el valor p es demasiado grande para mantener la hipótesis de independencia).

Sin embargo, para el lag 1 todo es genial:

    Box.test(resid(fit1),type="Ljung",lag=1,fitdf=1)

me da el resultado:

    X-squared = 0.3512, df = 0, p-value < 2.2e-16

O no estoy entendiendo la prueba, o se contradice ligeramente con lo que veo en el gráfico acf. La autocorrelación es ridículamente baja.

Luego comprobé fit2. La función de autocorrelación se ve así:

acf fit2

A pesar de una autocorrelación tan obvia en varios primeros rezagos, la prueba de Ljung-Box me dio resultados mucho mejores a 20 rezagos, que fit1:

    Box.test(resid(fit2),type="Ljung",lag=20,fitdf=0)

resulta en :

    X-squared = 147.4062, df = 20, p-value < 2.2e-16

mientras que la simple comprobación de la autocorrelación en el retardo 1 también me confirma la hipótesis nula.

    Box.test(resid(arima2.fit),type="Ljung",lag=1,fitdf=0)
    X-squared = 30.8958, df = 1, p-value = 2.723e-08 

¿He entendido bien la prueba? El valor p debe ser preferiblemente inferior a 0,05 para confirmar la hipótesis nula de independencia de los residuos. ¿Qué ajuste es mejor utilizar para la previsión, fit1 o fit2?

Información adicional: los residuos de fit1 muestran una distribución normal, los de fit2 no.

44voto

Nima Sabz Puntos 26

Ha interpretado mal la prueba. Si el valor de p es superior a 0,05, los residuos son independientes, lo cual es necesario para que el modelo sea correcto. Si simulas una serie temporal de ruido blanco utilizando el código siguiente y utilizas la misma prueba, el valor de p será superior a 0,05.

m = c(ar, ma)
w = arima.sim(m, 120)
w = ts(w)
plot(w)
Box.test(w, type="Ljung-Box")

11voto

ProblemFactory Puntos 4470

Muchas pruebas estadísticas se utilizan para intentar rechazar alguna hipótesis nula. En este caso concreto, la prueba de Ljung-Box intenta rechazar la independencia de algunos valores. ¿Qué significa?

  • Si valor p < 0,05 1 : Puede rechazar la hipótesis nula asumiendo una probabilidad de error del 5%. Por lo tanto, puede suponer que sus valores muestran dependencia entre sí.

  • Si valor p > 0,05 1 : No dispone de pruebas estadísticas suficientes para rechazar la hipótesis nula. Por lo tanto, no puede asumir que sus valores son dependientes. Esto podría significar que sus valores son dependientes de todos modos o puede significar que sus valores son independientes. Pero usted no está probando ninguna posibilidad específica, lo que su prueba realmente dijo es que usted no puede afirmar la dependencia de los valores, ni puede afirmar la independencia de los valores.

En general, lo importante aquí es tener en cuenta que un valor p < 0,05 permite rechazar la hipótesis nula, pero un valor p > 0,05 no. no le permiten confirmar la hipótesis nula.

En particular, no se puede probar la independencia de los valores de las series temporales utilizando la prueba de Ljung-Box. Sólo se puede probar la dependencia.


1: Supuse que $\alpha = 0.05$ que es un valor estándar de riesgo.

0voto

George Puntos 21

Según los gráficos ACF, es evidente que el ajuste 1 es mejor, ya que el coeficiente de correlación en el lag k(k>1) desciende bruscamente y se acerca a 0.

0voto

Vincent Puntos 1

Si se juzga con ACF, el ajuste 1 es más apropiado. En lugar de confundirse con la prueba de Ljung, puede utilizar el correlograma de los residuos para determinar el mejor ajuste entre fit1 y fit2.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X