让 statsmodels 在系数 t 检验中使用异方差校正标准误差

Getting statsmodels to use heteroskedasticity corrected standard errors in coefficient t-tests

我一直在深入研究 statsmodels.regression.linear_model.RegressionResults 的 API,并找到了如何检索不同类型的异方差校正标准误差(通过 HC0_se 等属性)但是,我不太清楚如何对系数进行 t 测试以使用这些校正后的标准误差。在 API 中有没有办法做到这一点,还是我必须手动完成?如果是后者,您能否就如何使用 statsmodels 结果执行此操作提出任何指导?

线性模型、离散模型和 GLM 的 fit 方法采用 cov_typecov_kwds 参数来指定稳健的协方差矩阵。这将附加到结果实例,并用于摘要中报告的所有推理和统计数据 table。

不幸的是,文档还没有以适当的方式真正显示这一点。 根据选项实际选择三明治的辅助方法显示了选项和所需的参数: 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 或正态和卡方分布用于 Wald 检验和置信区间。