Python - 测试逻辑回归中系数的相等性

Python - testing equality of coefficients in logit regression

作为初学者,我正在 Python 做我的第一个项目。

我想尝试确定 Logit 回归中的两个系数是否彼此显着不同。具体来说,我正在尝试进行 Wald 检验,并且我想知道在 运行 逻辑回归之后如何 calculate/display 参数的方差-协方差矩阵。

我在 R 中找到了如何执行此操作的代码和说明,并希望在 Python 中获得一些帮助。我使用的 UCLA 数据与示例答案中使用的相同:Stats exchange post on doing Wald test using R

我所追求的 运行R 中的代码在下面的答案中: “所以我们还需要 βgreβgre 和 βgpaβgpa 的协方差。 运行 逻辑回归后,可以使用 vcov 命令提取方差-协方差矩阵: var.mat <- vcov(mylogit)[c("gre", "gpa"),c("gre", "gpa")]

colnames(var.mat) <- rownames(var.mat) <- c("gre", "gpa")

是否有某种等同于上述 vcov 命令的命令?

如果不是,是否有其他我可以轻松实施的解决方案来测试系数之间是否存在显着差异?

感谢您的帮助, 马特

如果您想使用 built-in 功能,则 results.t_test 可用于(矢量化)单一假设,results.wald_test 可用于联合假设。除了线性模型之外的所有模型都使用正态分布和卡方分布进行 Wald 检验,但是这可以通过测试方法或 model.fit 方法中的 use_tuse_f 关键字进行更改.

两者都可以采用限制或对比矩阵或定义零假设的假设的字符串。基本上所有模型都是一样的。

例如对于 Logit,尽管文档字符串是通用的并且在示例中使用了 OLS http://www.statsmodels.org/dev/generated/statsmodels.discrete.discrete_model.LogitResults.t_test.html

似然比和分数或拉格朗日乘数检验尚未普遍实施,主要用于线性回归模型。

对于自己动手,参数估计的协方差在 results.cov_params() 方法中可用,所有其他必需的统计数据也是如此。负对数似然在所有最大似然模型中作为 results.llf 属性提供。