Hvad er meningen med “ lag ” i Box.test (Ljung-Box test)

Jeg vil udføre Ljung-Box-testen på rester af ARIMA-modellen med

Box.test(e, type = "Ljung-Box", fitdf = degrees_of_freedom) 

hvor N = 3064, med 8 variabler og yderligere 1 justering fra ar (1) i ARIMA-modellen.

Men jeg får underlige resultater

Box-Ljung test

data: e
X-squared = 20.134, df = -3055, p-value = NA

Tydeligvis df og p-værdi er slået fra, og jeg ved, at det skal gøre noget med lag -parameteren i Box.test-funktionen. Men jeg ved ikke, hvad denne parameter virkelig gør, eller hvordan jeg skal bestemme den.

Svar

Dit problem er sandsynligt med fitdf, ikke lag. Når du anvender Ljung-Box-testen på rester af en ARMA (p, q) -model, fitdf skal svare til $ p + q $ . Den første $ p + q $ autokorrelationer estimeres til nul ved konstruktion, så det er meningen, at du skal justere den asymptotiske fordeling af teststatistikken under nulhypotesen for det. Dette gør fitdf. I kombination med lag, det letter indstillingen af frihedsgraden for $ \ chi ^ 2 $ asymptotisk fordeling til lagfitdf. Hvad du tilsyneladende gjorde i stedet er at indstille fitdf til længden af serien minus din parameter antal, hvilket resulterede i, at lagfitdf var negativ og dermed producerer nonsens-nulfordeling og ingen $ p $ -værdi.

Frihedsgraderne-korrektionen via fitdf ser ud til at få testen til at fungere i orden, men tilsyneladende gør den det ikke som forklaret i tråden " Test for autokorrelation: Ljung-Box versus Breusch-Godfrey " . Således skal du ikke i første omgang bruge Ljung-Box-testen på rester af en ARIMA-model; brug i stedet Breusch-Godfrey-testen.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *