import statsmodels.formula.api as sm
X = np.append(arr = np.ones((50, 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).fit()
regressor_OLS.summary()
回溯(最近通话最近一次):
文件“”,第1行,在 regressor_OLS = sm.OLS(endog = y,exog = X_opt).fit()
AttributeError:模块'statsmodels.formula.api'没有属性 'OLS'
答案 0 :(得分:0)
在Python中,函数名称区分大小写。请注意,您正在调用函数OLS(全部大写),而正确的方法是全部小写。
请注意,在statsmodels程序包中有两个OLS模块:
statsmodels.regression.linear_model.OLS
statsmodels.formula.api.ols
您正在导入公式API,但应用了线性模型函数。您需要了解想要的那个。
有关更多信息,请参考以下链接:https://www.statsmodels.org/dev/generated/statsmodels.formula.api.ols.html#statsmodels.formula.api.ols https://www.statsmodels.org/dev/generated/statsmodels.regression.linear_model.OLS.html#statsmodels.regression.linear_model.OLS
答案 1 :(得分:0)
尝试一下:
import statsmodels.api as sm
x = np.append(arr=np.ones((50,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).fit()
这将起作用,因为statsmodels.api包含普通最小二乘法(OLS) 有关更多信息,请查看此链接 https://www.statsmodels.org/devel/generated/statsmodels.regression.linear_model.OLS.html