Как выполнить тест уайта в r (с примерами)
Тест Уайта используется для определения наличия гетероскедастичности в регрессионной модели.
Гетероскедастичность относится к неравномерной дисперсии остатков на разных уровнях переменной отклика в регрессионной модели, что нарушает одно из ключевых предположений линейной регрессии о том, что остатки одинаково разбросаны на каждом уровне переменной отклика.
В этом руководстве объясняется, как выполнить тест Уайта в R, чтобы определить, является ли гетероскедастичность проблемой в данной регрессионной модели.
Пример: тест Белого в R
В этом примере мы подберем модель множественной линейной регрессии , используя встроенный набор данных R mtcars.
После того, как мы подогнали модель, мы воспользуемся функцией bptest из библиотеки lmtest , чтобы выполнить тест Уайта, чтобы определить наличие гетероскедастичности.
Шаг 1. Подберите регрессионную модель.
Во-первых, мы подберем регрессионную модель, используя миль на галлон в качестве переменной отклика и disp и hp в качестве двух объясняющих переменных.
#load the dataset data(mtcars) #fit a regression model model <- lm(mpg~disp+hp, data=mtcars) #view model summary summary(model) Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 30.735904 1.331566 23.083 < 2nd-16 *** available -0.030346 0.007405 -4.098 0.000306 *** hp -0.024840 0.013385 -1.856 0.073679 . --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 3.127 on 29 degrees of freedom Multiple R-squared: 0.7482, Adjusted R-squared: 0.7309 F-statistic: 43.09 on 2 and 29 DF, p-value: 2.062e-09
Шаг 2: Выполните тест Уайта.
Далее мы будем использовать следующий синтаксис для выполнения теста Уайта, чтобы определить наличие гетероскедастичности:
#load lmtest library library(lmtest) #perform White's test bptest(model, ~ disp*hp + I(disp^2) + I(hp^2), data = mtcars) studentized Breusch-Pagan test data: model BP = 7.0766, df = 5, p-value = 0.215
Вот как интерпретировать результат:
- Статистика теста: X2 = 7,0766 .
- Степеней свободы 5 .
- Соответствующее значение p составляет 0,215 .
Тест Уайта использует следующие нулевые и альтернативные гипотезы:
- Нуль (H 0 ) : Гомоскедастичность присутствует.
- Альтернатива ( HA ): присутствует гетероскедастичность.
Поскольку значение p не меньше 0,05, мы не можем отвергнуть нулевую гипотезу. У нас нет достаточных доказательств, чтобы утверждать, что гетероскедастичность присутствует в регрессионной модели.
Что делать дальше
Если вам не удастся отвергнуть нулевую гипотезу теста Уайта, то гетероскедастичности нет и вы можете приступить к интерпретации результата исходной регрессии.
Однако если вы отклоните нулевую гипотезу, это означает, что в данных присутствует гетероскедастичность. В этом случае стандартные ошибки, отображаемые в выходной таблице регрессии, могут быть недостоверными.
Существует несколько распространенных способов решения этой проблемы, в том числе:
1. Преобразуйте переменную ответа.
Вы можете попробовать выполнить преобразование переменной ответа, например, взяв логарифмический, квадратный или кубический корень из переменной ответа. Как правило, это может привести к исчезновению гетероскедастичности.
2. Используйте взвешенную регрессию.
Взвешенная регрессия присваивает вес каждой точке данных на основе дисперсии ее подобранного значения. По сути, это придает низкий вес точкам данных с более высокими дисперсиями, уменьшая их остаточные квадраты. Использование соответствующих весов может устранить проблему гетероскедастичности.