Проверьте, отличаются ли два коэффициента в регрессии в statsmodels Python - PullRequest
0 голосов
/ 06 ноября 2018

В R функция car::linearHypothesis может использоваться для проверки гипотезы о том, что два коэффициента равны (что их различие значительно отличается от нуля). Вот пример из документации :

linearHypothesis(mod.duncan, "income = education")

За этот перекрестный ответ он также доступен в MATLAB как linhyptest.

Существует ли эквивалент для регрессионных моделей Python statsmodels?

1 Ответ

0 голосов
/ 06 ноября 2018

Классы результатов большинства моделей имеют несколько методов для тестов Вальда.

t_test векторизовано для одной гипотезы.
wald_test для совместной гипотезы.
wald_test_terms автоматически проверяет, что «термины», то есть подмножество коэффициентов совместно равны нулю, подобно таблице ANOVA типа 3, основанной на тестах Вальда.

См., Например, строку документации для t_test после OLS, но все модели наследуют один и тот же метод и работают одинаково (*). https://www.statsmodels.org/dev/generated/statsmodels.regression.linear_model.OLSResults.t_test.html

например

>>> t_test = results.t_test("income = education")
>>> print(t_test)

(*) Есть несколько моделей, которые не соответствуют стандартному шаблону, где эти тесты Вальда еще не доступны.

В t_test используется либо нормальное, либо t-распределение, в двух других тестах Вальда используется либо chisquare, либо F-распределение. Распределение можно выбрать с помощью ключевого слова use_t в model.fit.
Если use_t=True, то используются распределения t и F. если это False, то используются нормальные и квадратные распределения. По умолчанию t и F для моделей с линейной регрессией, а нормальные и квадратные для всех других моделей.

...