Test ljunga-boxa: definicja + przykład


Test Ljunga-Boxa , nazwany na cześć statystyków Grety M. Ljung i George’a EP Boxa , jest testem statystycznym sprawdzającym, czy w szeregach czasowych istnieje autokorelacja.

Test Ljunga-Boxa jest szeroko stosowany w ekonometrii i innych dziedzinach, w których powszechne są dane szeregów czasowych.

Podstawy testu Ljunga-Boxa

Oto podstawy testu Ljung-Boxa:

Hipotezy

W teście Ljunga-Boxa przyjęto następujące założenia:

H 0 : Reszty rozkładają się niezależnie.

H A : Reszty nie są dystrybuowane niezależnie; wykazują korelację szeregową.

Idealnie byłoby, gdybyśmy nie odrzucali hipotezy zerowej. Oznacza to, że chcielibyśmy, aby wartość p testu była większa niż 0,05, ponieważ oznacza to, że reszty naszego modelu szeregów czasowych są niezależne, co często przyjmujemy przy tworzeniu modelu.

Statystyka testowa

Statystyka testowa Ljunga-Boxa wygląda następująco:

Q = n(n+2) Σp k 2 / (nk)

Złoto:

n = wielkość próbki

Σ = fantazyjny symbol, który oznacza „sumę” i jest uważany za sumę od 1 do h , gdzie h to liczba testowanych przesunięć.

p k = próbka autokorelacji przy opóźnieniu k

Region odrzucenia

Statystyka testu Q jest zgodna z rozkładem Chi-kwadrat z h stopniami swobody; tj. Q~ X2 (h).

Odrzucamy hipotezę zerową i mówimy, że reszty modelu nie mają rozkładu niezależnego, jeśli Q > X 2 1-α, h

Przykład: Jak wykonać test Ljung-Box w R

Aby wykonać test Ljunga-Boxa w R dla zadanego szeregu czasowego, możemy skorzystać z funkcji Box.test() , która wykorzystuje następującą notację:

Box.test (x, offset=1, type=c(“Box-Pierce”, “Ljung-Box”), fitdf = 0)

Złoto:

  • x: wektor liczbowy lub jednowymiarowy szereg czasowy
  • przesunięcie: określona liczba przesunięć
  • typ: Test do wykonania; dostępne opcje obejmują Box-Pierce i Ljung-Box
  • fitdf: bD stopnie swobody odejmowania, jeśli x jest serią reszt

Poniższy przykład ilustruje sposób wykonania testu Ljunga-Boxa dla dowolnego wektora 100 wartości, który ma rozkład normalny ze średnią = 0 i wariancją = 1:

 #make this example reproducible
set.seed(1)

#generate a list of 100 normally distributed random variables
data <- rnorm(100, 0, 1)

#conduct Ljung-Box test
Box.test(data, lag = 10, type = "Ljung")

Generuje to następujące dane wyjściowe:

 Box-Ljung test

data:data
X-squared = 6.0721, df = 10, p-value = 0.8092

Statystyka testowa testu wynosi Q = 6,0721 , a wartość p testu wynosi 0,8092 , czyli jest znacznie wyższa niż 0,05. Tym samym nie udało nam się odrzucić hipotezy zerowej testu i stwierdzić, że wartości danych są niezależne.

Pamiętaj, że w tym przykładzie użyliśmy wartości przesunięcia wynoszącej 10, ale możesz wybrać dowolną wartość, której chcesz użyć dla przesunięcia, w zależności od konkretnej sytuacji.

Powiązane: Jak wykonać test Ljung-Box w Pythonie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *