Jag vill genomföra Ljung-Box-testet på rester av ARIMA-modellen med
Box.test(e, type = "Ljung-Box", fitdf = degrees_of_freedom)
där N = 3064, med 8 variabler och ytterligare 1 justering från ar (1) i ARIMA-modellen.
Men jag får konstiga resultat
Box-Ljung test
data: e
X-kvadrat = 20.134, df = -3055, p-värde = NA
Uppenbarligen df och p-värde är avstängt och jag vet att det måste göra något med lag
-parametern i Box.test-funktionen. Men jag vet inte vad den här parametern verkligen gör eller hur jag bestämmer den.
Svar
Ditt problem är troligt med fitdf
, inte lag
. När du använder Ljung-Box-testet på rester av en ARMA (p, q) -modell, fitdf
ska vara lika med $ p + q $ . Den första $ p + q $ autokorrelationer kommer att uppskattas till noll av konstruktion, så du ska justera den asymptotiska fördelningen av teststatistiken under nollhypotesen för det. Detta är vad fitdf
gör. I kombination med lag
, det underlättar inställningen av frihetsgraden för $ \ chi ^ 2 $ asymptotisk fördelning till lag
– fitdf
. Det du tydligen gjorde istället är att ställa in fitdf
till längden på serien minus din parameter antal, vilket resulterade i att lag
– fitdf
var negativ och därmed producerade nonsens-nollfördelning och ingen $ p $ -värde.
Frihetskorrigeringen via fitdf
verkar göra testet okej, men tydligen verkar det inte, som förklaras i tråden " Testning för autokorrelation: Ljung-Box kontra Breusch-Godfrey " . Således bör du inte använda Ljung-Box-testet på rester av en ARIMA-modell i första hand; använd Breusch-Godfrey-testet istället.