首页 > 解决方案 > 回归模型假设

问题描述

我尝试检查我的回归模型是否遵循回归假设?为此,我在 python 代码下面做了,但响应是错误的。有人可以解释它是怎么错的

from sklearn.linear_model import LinearRegression
reg = LinearRegression()
reg = reg.fit(x_train,y_train)
reg.score(x_test,y_test)

**0.9071005491012577**

import statsmodels.api as sm
import matplotlib.pyplot as plt
Res=reg.resid()
sm.qqplot(Res,fit=True,line='45')
Plt.show()

然后我得到以下错误。

AttributeError Traceback (last last call last) in 5 #plt.title("Model1 Residuals Probability Plot") 6 ----> 7 Res=reg.resid() 8 Fig=sm.qqplot(Res,fit=True,line ='45') 9 Plt.show()

AttributeError:“LinearRegression”对象没有属性“resid”

标签: machine-learningpythonscikit-learnregression

解决方案


根据错误信息,sklearn的LinearRegression()对象没有.resid属性。

您必须手动计算残差:它是实际 y 值y_train和预测值之间的差异reg.predict(X_train)。一旦你得到这些,你就可以运行sm.qqplot().

注意:Plt.show()返回错误。改变它:plt.show()


推荐阅读