sklearn使用——最小二乘法

参考网页:http://sklearn.apachecn.org/cn/0.19.0/

其中提供了中文版的文件说明,较为清晰。

 1 from sklearn.linear_model import LinearRegression as lr
 2 import matplotlib.pyplot as plt
 3 import numpy as np
 4 
 5 x = np.array([3.6,4.5,2.6,4.9,2.5,3.5]).reshape(-1,1)
 6 y = np.array([9.7,8.1,7.6,8.6,9.0,7.8]).reshape(-1,1)
 7 
 8 model = lr()
 9 
10 model.fit(x,y)
11 
12 y_plot = model.predict(x)
13 
14 print(model.coef_)
15 
16 plt.scatter(x,y,color='red',label= "sample data",linewidth=2)
17 plt.plot(x,y_plot,color='green',label="fitting line",linewidth=2)
18 plt.legend(loc='lower right')
19 plt.show()

(数据随便编的,不标准)

最小二乘法的实现利用了sklearn中提供的linear_model线性模型,numpy提供对数组的操作,matplotlib.pyplot提供对模型的图例化。

其中:

reshape(-1,1)利用numpy提供的方法将数组转换一维数组。

model实例化LinearRegression方法。

fit(x,y)为监督学习算法,若改为fit(X,y=None)则为无监督学习算法。

plt.scatter为散点图方法,此处用于将各个点标于图上。

扫描二维码关注公众号,回复: 3947825 查看本文章

plt.plot为折线图方法,此处用于将预测得的拟合直线标于图上。

plt.legend为图例设置方法,用于标记图例的显示位置,可用参数主要为“lower,upper,center,right,left,best”(若留空则为右上角,与best相同)。

plt.show为图例输出方法。

猜你喜欢

转载自www.cnblogs.com/wzc440302/p/9911514.html