rom sklearn.linear_model import LinearRegression
#拟合线性回归模型
x = train_x.reshape(-1,1)
model = LinearRegression()
model.fit(x,train_y)
print(model.coef_)
print(model.intercept_)
-> array([0.72190831])
-> 80.65287740759283
#在验证集上进行预测
valid_x = valid_x.reshape(-1,1)
pred = model.predict(valid_x)
#可视化
#我们将使用valid_x的最小值和最大值之间的70个点进行绘制
xp = np.linspace(valid_x.min(),valid_x.max(),70)
xp = xp.reshape(-1,1)
pred_plot = model.predict(xp)
plt.scatter(valid_x, valid_y, facecolor='None', edgecolor='k', alpha=0.3)
plt.plot(xp, pred_plot)
plt.show()
|