Was bedeutet “ lag ” in Box.test (Ljung-Box-Test)

Ich möchte den Ljung-Box-Test an Residuen des ARIMA-Modells mit

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

durchführen, wobei N = 3064 mit 8 Variablen und zusätzliche 1 Anpassung von ar (1) im ARIMA-Modell.

Aber ich erhalte seltsame Ergebnisse

Box-Ljung-Test

Daten: e
X-Quadrat = 20,134, df = -3055, p-Wert = NA

Offensichtlich df und p-Wert sind ausgeschaltet und ich weiß, dass es etwas mit dem Parameter lag in der Box.test-Funktion zu tun hat. Aber ich weiß nicht, was dieser Parameter wirklich tut und wie ich ihn bestimmen kann.

Antwort

Ihr Problem ist wahrscheinlich mit fitdf, nicht lag. Wenn der Ljung-Box-Test auf Residuen eines ARMA (p, q) -Modells angewendet wird, fitdf sollte gleich $ p + q $ sein. Der erste $ p + q $ Autokorrelationen werden konstruktionsbedingt auf Null geschätzt, daher sollten Sie die asymptotische Verteilung der Teststatistik unter der Nullhypothese dafür anpassen. Dies ist, was fitdf tut. In Kombination mit lag erleichtert das Setzen des Freiheitsgradparameters der asymptotischen Verteilung $ \ chi ^ 2 $ auf lagfitdf. Anscheinend haben Sie stattdessen fitdf auf die Länge der Serie abzüglich Ihres Parameters gesetzt count, was dazu führte, dass lagfitdf negativ war und somit eine unsinnige Nullverteilung und kein erzeugte $ p $ -Wert.

Die Korrektur der Freiheitsgrade über fitdf scheint den Test in Ordnung zu bringen, aber anscheinend funktioniert sie nicht, wie im Thread " Autokorrelationstest: Ljung-Box versus Breusch-Godfrey " . Daher sollten Sie nicht den Ljung-Box-Test für Residuen eines ARIMA-Modells verwenden. Verwenden Sie stattdessen den Breusch-Godfrey-Test.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.