Soive用线性回归建立了一个用于预测汽车价格的模型。 现在,我需要获取它来预测未来5年的价格。 我如何用clf.predict做到这一点?
X = df[['Year','Engine','FuelType','Age','Transmission','Mileage']]
y = df['Price']
这是我的X和y值
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.2)
clf = LinearRegression()
clf.fit(X_train, y_train)
clf.predict(X_test)
print(clf.score(X_test, y_test))
在我用完之后,
clf.predict([[2022,1300,0,5,0,10000]])
我得到了array([-5722871.63724422])
答案 0 :(得分:1)
要仅获取正值,您应该对数y值:
y_log = np.log(ytrain.values, where=(ytrain.values>0))
并使用模型的预测值进行逆变换:
y_pred = exp(clf.predict(X_test))