1、什么是数据分布(Data Distribution)?
数据分发是所有可能值以及每个值出现频率的列表。
当使用统计和数据科学时,此类列表非常重要。
random模块提供了返回随机生成的数据分布的方法。
2、随机分布
随机分布是一组随机数,遵循一定的概率密度函数。
概率密度函数:描述连续概率的函数。 即数组中所有值的概率。
我们可以使用random
模块的choice()
方法基于定义的概率生成随机数。
choice()
方法允许我们指定每个值的概率。
概率由介于0和1之间的数字设置,其中0表示永远不会出现该值,而1表示永远会出现该值。
例如:
生成包含100个值的一维数组,其中每个值必须分别为3、5、7或9。
将值设为3的概率设置为0.1
将值设为5的概率设置为0.3
将该值设为7的概率设置为0.6
将该值设为9的概率设置为0
from numpy import random
x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(100))
print(x)
所有概率数之和应为1。
即使您运行上述示例100次,9的值也不会出现。
可以通过在size
参数中指定形状来返回任何形状和大小的数组。
例如:
与上面相同的示例,但是返回具有3行的二维数组,每行包含5个值。
from numpy import random
x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(3, 5))
print(x)