Desejo conduzir o teste Ljung-Box nos resíduos do modelo ARIMA com
Box.test(e, type = "Ljung-Box", fitdf = degrees_of_freedom)
onde N = 3064, com 8 variáveis e 1 ajuste adicional de ar (1) no modelo ARIMA.
Mas obtenho resultados estranhos
Teste de Box-Ljung
dados: e
X ao quadrado = 20,134, df = -3055, p-valor = NA
Obviamente df e o valor p estão desativados e sei que ele tem que fazer algo com o parâmetro lag
na função Box.test. Mas eu não sei o que esse parâmetro realmente faz, nem como determiná-lo.
Resposta
Seu problema provavelmente é com fitdf
, não lag
. Ao aplicar o teste Ljung-Box em resíduos de um modelo ARMA (p, q), fitdf
deve ser igual a $ p + q $ . O primeiro $ p + q $ as autocorrelações serão estimadas em zero por construção, então você deve ajustar a distribuição assintótica da estatística de teste sob a hipótese nula para isso. É isso que fitdf
faz. Em combinação com lag
, facilita a definição dos parâmetros de graus de liberdade da distribuição assintótica $ \ chi ^ 2 $ para lag
– fitdf
. O que você aparentemente fez em vez disso foi definir fitdf
para o comprimento da série menos seu parâmetro contagem, que resultou em lag
– fitdf
sendo negativo e, portanto, produzindo uma distribuição nula absurda e nenhum $ p $ -value.
A correção dos graus de liberdade via fitdf
parece fazer o teste funcionar bem, mas aparentemente faz não, conforme explicado no tópico " Teste de autocorrelação: Ljung-Box versus Breusch-Godfrey " . Assim, você deve não usar o teste Ljung-Box em resíduos de um modelo ARIMA em primeiro lugar; em vez disso, use o teste Breusch-Godfrey.