我一直在研究 statsmodels.regression.linear_model.RegressionResults
的API,并且已经找到了如何检索不同类型的异方差校正标准错误(通过HC0_se
等属性)但是,我不能完全弄清楚如何在系数上获得 t - 测试以使用这些修正的标准误差。有没有办法在API中执行此操作,还是必须手动执行此操作?如果是后者,您是否可以就如何使用statsmodels结果建议任何指导?
答案 0 :(得分:17)
线性模型,离散模型和GLM的fit
方法采用cov_type
和cov_kwds
参数来指定稳健的协方差矩阵。这将附加到结果实例,并用于汇总表中报告的所有推理和统计信息。
不幸的是,文档还没有以适当的方式显示这一点。 实际根据选项选择三明治的辅助方法显示了选项和必需参数: http://statsmodels.sourceforge.net/devel/generated/statsmodels.regression.linear_model.OLS.fit.html
例如,估算OLS模型并使用HC3
协方差矩阵可以用
model_ols = OLS(...)
result = model_ols.fit(cov_type='HC3')
result.bse
result.t_test(....)
一些三明治需要额外的参数,例如群集健壮的标准错误,可以通过以下方式选择,假设mygroups
是包含组标签的数组:
results = OLS(...).fit(cov_type='cluster', cov_kwds={'groups': mygroups}
results.bse
...
一些强大的协方差矩阵在不进行检查的情况下对数据做出了额外的假设。例如异方差性和自相关鲁棒标准误差或Newey-West,HAC
,标准误差假设顺序时间序列结构。一些面板数据强大的标准误差也假设个人堆叠时间序列。
可以使用单独的选项use_t
来指定默认情况下是否应使用t和F或普通和chisquare分布进行Wald测试和置信区间。