gpt4 book ai didi

python - 使用 sm.OLS 时需要添加常量吗?

转载 作者:太空宇宙 更新时间:2023-11-03 11:27:56 24 4
gpt4 key购买 nike

我正在对两组数据 Y 和 X 执行 OLS。我使用 statsmodel.api.OLS。但是,无论我之前是否向 X 添加常量,我都发现了一些非常不同的结果。这是代码:

import statsmodels.api as sm
import numpy as np

mess = "SELECT .... FROM... WHERE ...."
data = np.array(db.extractData(mess))
Y = data[,:0]
X = data[,:1]
#Option1
res = sm.OLS(Y,X).fit().rsquared ---> will return 0.76
#Option2
X = sm.add_constant(X)
res = sm.OLS(Y,X).fit().rsquared ---> will return 0.06

考虑到我是否添加常量的巨大差异,我认为我做错了什么。非常感谢您的宝贵时间。

最佳答案

您需要添加常量。来自文档:http://www.statsmodels.org/devel/generated/statsmodels.regression.linear_model.OLS.html

默认情况下不包含拦截,应由用户添加。请参见 statsmodels.tools.add_constant。

关于python - 使用 sm.OLS 时需要添加常量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30286095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com