我正在尝试简单的线性回归,我尝试了此代码:
x1=data.iloc[:, 9].values
y1=data.iloc[:,1].values
from sklearn.model_selection import train_test_split
seed=7
x1_train,x1_test,y1_train,y1_test=
train_test_split(x1,y1,test_size=0.15,random_state=seed)
x1_train=nm.reshape(nm.array(x1_train),(-1,1))
from sklearn.linear_model import LinearRegression
lireg=LinearRegression()
model1=LinearRegression().fit(x1_train,y1_train)
y_pred=lireg.predict(x1_test)
notFittedError:此线性重试的实例尚未拟合。在使用此方法之前,请使用适当的参数调用"适合"
请帮助
这是说明为什么您有此错误。让我们看看以下几行:
lireg=LinearRegression()
model1=LinearRegression().fit(x1_train,y1_train)
y_pred=lireg.predict(x1_test)
这里发生了什么?
您初始化2
LinearRegression
型号命名:lireg
和model1
对于
lireg
,您不致电.fit
,但对于model1
,您会做。y_pred=lireg.predict(x1_test)
引发错误,因为您尝试使用lireg
进行.predict
,但是lireg
未经训练/安装。
您只需要以下方式:
方法1:
from sklearn.linear_model import LinearRegression
lireg=LinearRegression() # initialize the model
lireg.fit(x1_train,y1_train) # fit he model
y_pred=lireg.predict(x1_test) # now predict
方法2:
from sklearn.linear_model import LinearRegression
lireg=LinearRegression().fit(x1_train,y1_train) # initialize & fit the model
y_pred=lireg.predict(x1_test) # now predict