使用statsmodels评估回归系数的t检验

Tim*_*ous 0 python linear-regression statsmodels

我有一个包含大约100多个功能的数据集.我也有一小组协变量.

我使用statsmodels构建OLS线性模型,对于每个协变量,y = x + C1 + C2 + C3 + C4 + ... + Cn,以及特征x和因变量y.

我正在尝试对回归系数进行假设检验以测试系数是否等于0.我认为t检验是适当的方法,但我不太确定如何实现这一点Python,使用statsmodels.

我特别知道,我想使用http://www.statsmodels.org/devel/generated/statsmodels.regression.linear_model.RegressionResults.t_test.html#statsmodels.regression.linear_model.RegressionResults.t_test

但我不确定我理解r_matrix参数.我能为此提供什么?我确实看过这些例子,但我不清楚.

此外,我对协变量本身的t检验不感兴趣,而只是x的回归共同效应.

任何帮助赞赏!

Jar*_*uen 5

你确定你不想要statsmodels.regression.linear_model.OLS吗?这将执行OLS回归,使参数估计和相应的p值(以及许多其他事物)可用.

from statsmodels.regression import linear_model
from statsmodels.api import add_constant

Y = [1,2,3,5,6,7,9]
X = add_constant(range(len(Y)))

model = linear_model.OLS(Y, X)
results = model.fit()
print(results.params) # [ 0.75        1.32142857]
print(results.pvalues) # [  2.00489220e-02   4.16826428e-06]
Run Code Online (Sandbox Code Playgroud)

这些p值来自每个拟合参数的t检验等于0.

RegressionResults.t_test对于较不传统的假设似乎是有用的.