import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
sklearn的线性模型是最简单的一个模型了,也就是LinearRegression
数据拆分
# 数据拆分
x_train, x_test, y_train, y_test = train_test_split(data[1:, 0], data[1:, 1], test_size = 0.3)
print(x_train.shape)
# 也就是说,测试集的比例是30%.那就是300*0.3=90
x_test.shape
上面这个train_test_split是将数据拆分为70%的训练集和30%的测试集
训练模型也是一个十分简单的两句话。
# 训练模型
model = LinearRegression()
model.fit(x_train, y_train)
这样就好了。
这个是做预测的。
# 训练集的散点图
plt.scatter(x_train, y_train, color = 'b')
# 模型对训练集的预测结果
plt.plot(x_test,model.predict(x_test), color ='r' , linewidth=5)
# 画表头和xy坐标描述
plt.title('Age Vs Quality (Training set)')
plt.xlabel('Age')
plt.ylabel('Quality')
plt.show()
预测是很简单的,就是
model.predict(x_test)
结果如上