为啥当我使用 statsmodels 进行 OLS 和使用 scikit 进行 PooledOLS 时得到相同的结果?

Posted

技术标签:

【中文标题】为啥当我使用 statsmodels 进行 OLS 和使用 scikit 进行 PooledOLS 时得到相同的结果?【英文标题】:Why do I get the same results when I do OLS using statsmodels and PooledOLS using scikit?为什么当我使用 statsmodels 进行 OLS 和使用 scikit 进行 PooledOLS 时得到相同的结果? 【发布时间】:2020-01-28 06:33:59 【问题描述】:

我目前正在使用 python 做一个机器学习项目(这里是初学者,从头开始学习一切)。

只是想知道使用我拥有的相同面板数据集的 statsmodels 的 OLS 和 scikit 的 PooledOlS 有什么区别。我都试过了,他们给了我同样的结果。这是否意味着他们本质上是在做同样的事情,但来自不同的包?我应该得到相同的结果吗?还是我做错了什么?

我的数据集如下所示:

                  exces-s-returnlag1m      ROA  ...  momentum6m  momentum12m
bank  date                                    ...                         
bankA 2019-06-30         -14.564600   0.9795  ...        0.14        -0.24
      2019-05-31           7.522300   0.9795  ...       -0.69        -1.97
      2019-04-30          -2.020400   0.9795  ...        1.36        -1.70
bankB 2019-06-30          -5.969600   0.9915  ...       -0.39        -1.77
      2019-05-31           0.220200   0.9915  ...       -0.24        -2.00
      2019-04-30          -1.900000   0.9915  ...       -0.06        -1.42
bankC 2019-06-30           2.721700   0.9763  ...       -0.38        -1.13
      2019-05-31          -8.418900   0.9763  ...       -1.28        -1.19
      2019-04-30          -1.001100   0.9763  ...       -3.06        -1.16

我的数据框中目前有一个 MultiIndex(银行和日期)。我应该用它来做面板回归吗?

编辑:据我了解,PooledOLS 是多元线性回归的“特殊”情况,所以它会给出与 statsmodels 的 OLS 相同的结果?如果我错了,请纠正我!

【问题讨论】:

OLS Regression: Scikit vs. Statsmodels?的可能重复 stats.stackexchange.com/questions/146804/… becominghuman.ai/… 嗯,但这些是 OLS 与线性回归。这是否意味着面板数据的 PooledOLS 与线性回归相同? pypi.org/project/linearmodels 【参考方案1】:

OLS: 普通最小二乘法 只是一种简单的计算方法。 根据正规方程的求解方式,实现可能会有所不同,但由于计算量存在差异,因此测量执行时间可能会更好。

【讨论】:

以上是关于为啥当我使用 statsmodels 进行 OLS 和使用 scikit 进行 PooledOLS 时得到相同的结果?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Statsmodels OLS 不支持在包含多个单词的列中读取?

为啥我只能从 statsmodels OLS 拟合中获得一个参数

使用 statsmodels.formula.api 中的 ols - 如何删除常数项?

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

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

超详细多元线性回归模型statsmodels_ols