在numpy中生成随机数的函数之间的差异

no_*_*ame 6 python random numpy

我试图了解这些函数之间的区别(如果有的话):

numpy.random.rand()

numpy.random.random()

numpy.random.uniform()
Run Code Online (Sandbox Code Playgroud)

它们似乎从均匀分布中产生随机样本.那么,在函数中没有任何参数,有什么区别吗?

Cor*_*mer 7

numpy.random.uniform(low=0.0, high=1.0, size=None) - 来自任意范围的统一样本

从均匀分布中抽取样本。
样本均匀分布在半开区间[low, high)(包括低,但不包括高)。换句话说,给定区间内的任何值都同样有可能被统一绘制。

numpy.random.random(size=None) - 0 和 1 之间的均匀分布

在半开区间返回随机浮点数[0.0, 1.0)
结果来自规定区间内的“连续均匀”分布。为了采样Unif[a, b)b > a乘以random_sample by(ba)的输出并添加一个:
(b - a) * random_sample() + a

numpy.random.rand(d0, d1, ..., dn) - 来自均匀分布的样本以填充给定形状的数组

给定形状的随机值。
创建一个给定形状的数组,并使用来自 上的均匀分布的随机样本进行传播[0, 1)

为了回答您的其他问题,因为所有的默认参数的所有功能numpy.random.uniformnumpy.random.random以及numpy.random.rand是相同的。