机器学习 - 数据分布
数据分布
在本教程的前面,我们使用非常少量的示例数据来理解不同的概念。
在现实世界中,数据集要大得多,但在项目初期很难收集到真实世界的数据。
如何获得大型数据集?
为了创建用于测试的大型数据集,我们使用 Python 模块 NumPy,它带有多种方法来创建任意大小的随机数据集。
示例
创建一个包含 250 个 0 到 5 之间的随机浮点数的数组
import numpy
x = numpy.random.uniform(0.0, 5.0, 250)
print(x)
自己试试 »
直方图
为了可视化数据集,我们可以使用收集到的数据绘制直方图。
我们将使用 Python 模块 Matplotlib 来绘制直方图。
在我们的 Matplotlib 教程 中了解 Matplotlib 模块。
示例
绘制直方图
import numpy
import matplotlib.pyplot as plt
x = numpy.random.uniform(0.0, 5.0, 250)
plt.hist(x, 5)
plt.show()
结果
运行示例 »直方图解释
我们使用上面示例中的数组绘制一个包含 5 个条形的直方图。
第一个条形表示数组中在 0 到 1 之间的值的个数。
第二个条形表示数组中在 1 到 2 之间的值的个数。
等等。
这将给我们以下结果
- 52 个值在 0 到 1 之间
- 48 个值在 1 到 2 之间
- 49 个值在 2 到 3 之间
- 51 个值在 3 到 4 之间
- 50 个值在 4 到 5 之间
注意: 数组值是随机数,在您的计算机上不会显示完全相同的结果。
大型数据分布
包含 250 个值的数组不被认为是很大,但现在您知道如何创建随机值集,并且通过更改参数,您可以创建您想要的任意大小的数据集。
示例
创建一个包含 100000 个随机数的数组,并使用 100 个条形的直方图显示它们
import numpy
import matplotlib.pyplot as plt
x = numpy.random.uniform(0.0, 5.0, 100000)
plt.hist(x, 100)
plt.show()
运行示例 »