我正在尝试简单的线性回归,并且已经尝试了以下代码:
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:此LinearRegression实例尚未安装。使用此方法之前,请使用适当的参数调用“适合”
请帮助
答案 0 :(得分:0)
这是解释此错误原因的说明。让我们看一下以下几行:
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)
.predict
,但是lireg
没有经过训练/适合。
您只需要这个:
方法1:
lireg
方法2:
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
答案 1 :(得分:-1)
model1=LinearRegression().fit(x1_train,y1_train)
答案:
使用 lireg 而不是 LinearRegression()
正确的代码是: model1=lireg.fit(x1_train,y1_train)