Jakie jest znaczenie “ lag ” w Box.test (test Ljung-Box)

Chcę przeprowadzić test Ljung-Boxa na resztach modelu ARIMA z

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

gdzie N = 3064, z 8 zmienne i dodatkowe 1 korekta z ar (1) w modelu ARIMA.

Ale otrzymuję dziwne wyniki

Test Box-Ljung

dane: e
X-kwadrat = 20,134, df = -3055, p-value = NA

Oczywiście df i wartość p są wyłączone i wiem, że ma to coś wspólnego z parametrem lag w funkcji Box.test. Ale nie wiem, co naprawdę robi ten parametr ani jak go określić.

Odpowiedź

Twój problem prawdopodobnie dotyczy fitdf, a nie lag. Stosując test Ljung-Boxa na resztach modelu ARMA (p, q), fitdf powinno być równe $ p + q $ . Pierwszy $ p + q $ autokorelacje zostaną oszacowane na zero przez konstrukcję, więc w tym celu należy dostosować asymptotyczny rozkład statystyki testowej w ramach hipotezy zerowej. To właśnie robi fitdf. W połączeniu z lag, ułatwia ustawienie parametru stopni swobody $ \ chi ^ 2 $ asymptotycznego rozkładu na lagfitdf. Najwyraźniej zamiast tego ustawiłeś fitdf na długość serii pomniejszoną o Twój parametr count, co spowodowało, że lagfitdf było ujemne, a tym samym generowało nonsensowny rozkład zerowy i brak $ p $ -value.

Wydaje się, że korekta stopni swobody przez fitdf sprawia, że test działa dobrze, ale najwyraźniej tak nie, jak wyjaśniono w wątku " Testowanie autokorelacji: Ljung-Box kontra Breusch-Godfrey " . Dlatego w pierwszej kolejności nie należy używać testu Ljung-Boxa na resztach modelu ARIMA; zamiast tego użyj testu Breuscha-Godfreya.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *