statsmodels 中的面板 OLS(因为它在 Pandas 中已被弃用?)

Posted

技术标签:

【中文标题】statsmodels 中的面板 OLS(因为它在 Pandas 中已被弃用?)【英文标题】:Panel OLS in statsmodels (because it's deprecated in Pandas?) 【发布时间】:2018-02-08 04:38:58 【问题描述】:

似乎在最新版本的 pandas 中,所有 ols 功能都已被弃用(pandas.stats 实际上已经消失,并且没有 PanelOLS 或 ols 功能)。我正在尝试使用 statsmodels 运行面板回归,但找不到有效的方法?以前我可以使用这样的代码:

panel_ols = ols(y=DataFrame, x=DataFrame, ...,)

这将使用单面板回归中的所有数据来估计系数。

现在有什么办法吗?

【问题讨论】:

您可以使用 sklearn OLS Regressor 分类器。 除了@cᴏʟᴅsᴘᴇᴇᴅ 推荐之外,numpy 还具有用于 OLS 回归的内置功能。见-docs.scipy.org/doc/numpy/reference/generated/… 【参考方案1】:

根据 statsmodel 文档,您似乎想要 Linear Mixed Effects Models,但我不是 statsmodels 的大用户,所以我只是通过文档。

有关面板和 OLS 状态的更多一般信息:面板已弃用,OLS 已从 pandas 版本 0.20.1 开始删除。以下是来自“最新消息”的信息:

Deprecate Panel

面板已弃用,将在未来版本中删除。 表示 3-D 数据的推荐方法是通过 to_frame() 或 xarray 包在 DataFrame 上使用 MultiIndex。 Pandas 提供了 to_xarray() 方法来自动执行此转换。有关更多详细信息,请参阅弃用面板文档 (GH13563)。

Remove OLS, Fama-Macbeth, etc.

pandas.stats.fama_macbeth、pandas.stats.ols、pandas.stats.plm 和 pandas.stats.var,以及*** pandas.fama_macbeth 和 pandas.ols 例程被删除。 类似的功能可以在statsmodels 中找到 包。 (GH11898)

【讨论】:

以上是关于statsmodels 中的面板 OLS(因为它在 Pandas 中已被弃用?)的主要内容,如果未能解决你的问题,请参考以下文章

使用 statsmodels 忽略多个 OLS 回归中的缺失值

我们如何计算 statsmodels OLS 中的截距和斜率?

AttributeError:模块“statsmodels.formula.api”没有属性“OLS”

OLS 适合带有系数误差和转换目标的 python

为啥 `sklearn` 和 `statsmodels` 的 OLS 回归实现给出不同的 R^2?

Statsmodels - 线性回归模型 (OLS) 中系数趋势显着性的 Wald 检验