python - 在python statsmodels中,找到回归的标准误差

标签 python

According to the docs ,我可以通过在 RegressionResults 实例上使用 scale() 类方法来找到回归的标准误差。

但是,我无法获取 RegressionResults 实例。

这就是我所做的:

y = foo; X = bar

model = sm.OLS(y, X)

results = model.fit()

研究对象类型...

print type(results)

...返回一个 RegressionResultsWrapper

<class 'statsmodels.regression.linear_model.RegressionResultsWrapper'>

这个“RegressionResultsWrapper”没有记录,我找不到操作它的方法。 results.scale() 失败,无法获取我想要的信息。

此外,the docs声明 .fit() 应该返回 RegressionResults 类实例,但返回的是 RegressionResultsWrapper,如上所示。

知道如何获取此回归模型的“回归标准误差”信息吗?

最佳答案

这是 Python 的“duck typing”约定。当文档说 fit() 应返回 RegressionResults 实例时,它实际上意味着它将返回与 RegressionResults 公共(public)接口(interface)兼容的内容>。 RegressionResults 的任何记录的属性和方法都应该可以根据文档中的描述从返回的对象访问。事实似乎确实如此:如果您访问 results.scale,您将得到一个数字。请注意,它不是一个方法;而是一个方法。这是一个属性。如果您在文档中错过了它,那么尝试将其作为方法调用时收到的错误消息会告诉您这一点。

确实,从技术上讲,他们应该说该方法返回与 RegressionResults 兼容的东西,而不是 RegressionResults 实例本身,但可以这样理解:大多数 Python 程序员认为,在正常情况下,您不应该实际检查给定对象的类型。

关于python - 在python statsmodels中,找到回归的标准误差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41312908/

相关文章:

python - Django : Send mail failed

python - 将变量设置为类的名称并从该类调用函数

python - 在列表中查找最接近给定数字的值的位置

python - 从 BaseHTTPRequestHandler 中的 HTTP 请求获取主机字段

python - 将不同的可调用对象传递给uWSGI而不是flask应用程序对象

Python 输出格式问题

python - 如何在对两列进行分组并在 Pandas Dataframe 中获取值计数后获取最高值行?

python - 创建列表列表

python - 如何将大数据集划分为n个子集并保持类别比例

Python:在numpy数组中左右移动所有大于0的元素