Як виконати тест брейша-годфрі в r


Одним із ключових припущень лінійної регресії є відсутність кореляції між залишками, тобто залишки незалежні.

Щоб перевірити автокореляцію першого порядку, ми можемо виконати тест Дарбіна-Ватсона . Однак, якщо ми хочемо перевірити автокореляцію вищих порядків, нам потрібно виконати тест Брейша-Годфрі .

У цьому тесті використовуються такі припущення :

H 0 (нульова гіпотеза): немає автокореляції порядку, меншого або рівного p .

H A (альтернативна гіпотеза): існує автокореляція певного порядку, менша або рівна p .

Тестова статистика відповідає розподілу хі-квадрат із p ступенями свободи.

Якщо p-значення , яке відповідає цій тестовій статистиці, є нижчим за певний рівень значущості (наприклад, 0,05), тоді ми можемо відхилити нульову гіпотезу та зробити висновок, що існує автокореляція між залишками в певному нижчому порядку або дорівнює p .

Щоб виконати тест Брейша-Годфрі в R, ми можемо використати функцію bgtest(y ~ x, order = p) із бібліотеки lmtest .

Цей посібник містить приклад використання цього синтаксису в R.

Приклад: тест Брейша-Годфрі в Р

По-перше, давайте створимо фальшивий набір даних, що містить дві змінні предиктора (x1 і x2) і змінну відповіді (y).

 #create dataset
df <- data. frame (x1=c(3, 4, 4, 5, 8, 9, 11, 13, 14, 16, 17, 20),
                 x2=c(7, 7, 8, 8, 12, 4, 5, 15, 9, 17, 19, 19),
                  y=c(24, 25, 25, 27, 29, 31, 34, 34, 39, 30, 40, 49))

#view first six rows of dataset
head(df)

  x1 x2 y
1 3 7 24
2 4 7 25
3 4 8 25
4 5 8 27
5 8 12 29
6 9 4 31

Далі ми можемо виконати тест Брейша-Годфрі за допомогою функції bgtest() із пакета lmtest .

Для цього прикладу ми перевіримо автокореляцію між залишками в порядку p = 3:

 #load lmtest package
library (lmtest)

#perform Breusch-Godfrey test
bgtest(y ~ x1 + x2, order= 3 , data=df)

	Breusch-Godfrey test for serial correlation of order up to 3

data: y ~ x1 + x2
LM test = 8.7031, df = 3, p-value = 0.03351

З результату ми бачимо, що тестова статистика X2 = 8,7031 з 3 ступенями свободи. Відповідне значення p становить 0,03351 .

Оскільки це p-значення менше 0,05, ми можемо відхилити нульову гіпотезу та зробити висновок, що існує автокореляція між залишками порядку, меншого або рівного 3.

Як боротися з автокореляцією

Якщо ви відкидаєте нульову гіпотезу та робите висновок, що в залишках присутня автокореляція, у вас є кілька варіантів виправлення цієї проблеми, якщо ви вважаєте її досить серйозною:

  • Для позитивної послідовної кореляції розгляньте можливість додавання лагів залежної та/або незалежної змінної до моделі.
  • Для негативної послідовної кореляції переконайтеся, що жодна з ваших змінних не має надмірної затримки .
  • Для сезонної кореляції розгляньте можливість додавання сезонних фіктивних елементів до моделі.

Додаткові ресурси

Як виконати просту лінійну регресію в R
Як виконати множинну лінійну регресію в R
Як виконати тест Дарбіна-Ватсона в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *