【问题标题】:statsmodels get_margeff() for OLSOLS 的 statsmodels get_margeff()
【发布时间】:2023-02-15 06:10:10
【问题描述】:

在 OLS 回归之后,statsmodels 似乎不支持类似 stata 的边距。

linear_model.RegressionResults 或 linear_model.RegressionResults.model 没有 get_margeff() 方法。这是正确的还是我遗漏了什么?

只是想在我开始为 OLS 编写类似 stata 的边距方法之前确定一下。

提前致谢

【问题讨论】:

  • 不,statsmodels 没有用于 OLS 的边距(部分用于 GLM-gaussian)。但是像 OLS 这样的线性模型中的边距只是参数。
  • 虽然这对于像 x1 或 x2 这样的线性项是正确的,但对于像二次项或交互项这样的非线性项却不是这样。这些项的微分 dy/dx 取决于独立变量的值。这些值可以 1) 均值、2) 自变量的值列表或 3) 所有值进行评估。在最后一种情况下,报告了平均边际效应。这些操作在 OLS 和 Logit 中由 Stata margins 命令支持,在 R 中由 marginaleffects 包支持。因此,鉴于您的回答,我将不得不写下它们。
  • 即使是当前的 statsmodels margeff 也无法处理多列项。问题是从公式中获取正确的信息。
  • 开发版本(和即将发布的版本)有一个新的 get_prediction 方法和相关的基础设施,以及用于非线性函数的增量方法,适用于这样的用例。但是,对用户提供的功能的支持尚未公开,功能目前仅供内部使用。
  • (我只是稍微看了看)。在线性模型中,即使像交互作用或多项式这样的多列效应在参数上也是线性的,因此我们可以使用 t_test 方法进行推理。但是,statsmodels 不支持从公式中为此创建 exog。统计模型问题github.com/statsmodels/statsmodels/issues/5387

标签: statsmodels


【解决方案1】:

@tmck:您建议 2022 年 10 月的解决方案是否可以在某处下载?我非常希望能够在 Statsmodels 中使用类似 Stata 的边距功能。

【讨论】:

猜你喜欢
  • 2020-11-23
  • 2018-10-17
  • 2018-12-05
  • 2017-11-02
  • 2021-09-20
  • 2021-10-05
  • 2014-03-30
  • 2017-06-11
  • 2012-07-14
相关资源
最近更新 更多