Python/python ml scatterplot
来自菜鸟教程
<languages />
机器学习-散点图
散点图
散点图是一个图表,其中数据集中的每个值都用点表示。
Matplotlib模块有一种绘制散点图的方法,它需要两个长度相同的数组,一个数组用于x轴的值,一个数组用于y轴的值:
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
The
x
数组代表每辆汽车的年龄。
The
y
数组代表每辆车的速度。
例
使用
scatter()
绘制散点图的方法:
import matplotlib.pyplot as plt x = [5,7,8,7,2,17,2,9,4,11,12,9,6] y = [99,86,87,88,111,86,103,87,94,78,77,85,86] plt.scatter(x, y) plt.show()
结果:
散点图解释
x轴表示年龄,y轴表示速度。
从图中可以看到,两辆最快的汽车都使用了2年,最慢的汽车使用了12年。
注意: 汽车似乎越新,行驶速度就越快,但这可能是一个巧合,毕竟我们只注册了13辆汽车。
随机数据分布
在机器学习中,数据集可以包含成千上万甚至数百万个值。
测试算法时,您可能没有真实的数据,您可能必须使用随机生成的值。
正如我们在上一章中学到的那样,NumPy模块可以帮助我们实现这一目标!
让我们创建两个数组,两个数组都填充有正常数据分布中的1000个随机数。
第一个数组的平均值设置为5.0,标准差为1.0。
第二个数组的平均值将设置为10.0,标准差为2.0:
例
有1000个点的散点图:
import numpy import matplotlib.pyplot as plt x = numpy.random.normal(5.0, 1.0, 1000) y = numpy.random.normal(10.0, 2.0, 1000) plt.scatter(x, y) plt.show()
结果:
文件:Img matplotlib scatter 1000.png
散点图解释
我们可以看到,点集中在x轴上的值5和y轴上的10周围。
我们还可以看到,在y轴上的扩散比在x轴上的扩散大。