sklearn实现一元线性回归
导入sklearn以及相关库
from sklearn.linear_model import LinearRegression
import numpy as np
import matplotlib.pyplot as plt
载入数据
data = np.genfromtxt("data.csv", delimiter=",")
x_data = data[:, 0]
y_data = data[:, 1]
plt.scatter(x_data, y_data)
print(x_data.shape)
为了匹配sklearn库中要求的数据格式,应该增加一个维度
x_data = data[:, 0, np.newaxis]
y_data = data[:, 1, np.newaxis]
创建并拟合模型
model = LinearRegression()
model.fit(x_data, y_data)
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=True)
最后则是画图看效果
plt.plot(x_data, y_data, 'b.')
plt.plot(x_data, model.predict(x_data), 'r')
plt.show()