使用ols()。fit()使用statsmodels.api时出错

时间:2019-10-29 12:00:01

标签: python machine-learning statsmodels

我一直在关注有关Udemy的机器学习教程。我正在使用statsmodels.formula.api库,但是类OLS不在其中,并且我猜它已经移动了,因为我找到了一个说要使用statsmodels.api的线程并将其导入。问题是,当我在下面的代码fit()上运行sm.OLS()方法时,出现错误'NoneType' Object has no attribute 'shape'。这是代码和错误。

import statsmodels.api as sm
X = np.append(arr = np.ones((len(X), 1)).astype(int), values = X , axis = 1)
X_opt = X[:, [0, 1, 2, 3, 4, 5]]
regressor_OLS = sm.OLS(endog = y, exorg = X_opt).fit()

regressor_OLS = sm.OLS(endog = y, exorg = X_opt).fit()行的错误

AttributeError: 'NoneType' object has no attribute 'shape'

注意:如果像运行.fit()一样排除regressor_OLS = sm.OLS(endog = y, exorg = X_opt),它可以正常工作,但不是我想要的结果。

1 个答案:

答案 0 :(得分:1)

将其更改为

import statsmodels.api as sm
X = np.append(arr = np.ones((len(X), 1)).astype(int), values = X , axis = 1)
X_opt = X[:, [0, 1, 2, 3, 4, 5]]
regressor_OLS = sm.OLS(endog = y, exog = X_opt)
res=regressor_OLS.fit()

这是因为初始化后必须安装回归器。在其他注意事项上,只是注意到它不是exorg

希望这会有所帮助。