numpy.random.randn#

random.randn(d0, d1, ..., dn)#

从“标准正态”分布中返回一个样本(或多个样本)。

注意

这是一个方便函数,供用户将代码从 Matlab 移植,并封装了 standard_normal。该函数采用元组来指定输出的大小,这与其他 NumPy 函数(如 numpy.zerosnumpy.ones)一致。

注意

新代码应使用 standard_normal 方法,而不是 Generator 实例;请参阅 快速入门

如果提供了正的类整数参数,randn 将生成一个形状为 (d0, d1, ..., dn) 的数组,该数组填充了从均值为 0、方差为 1 的单变量“正态”(高斯)分布中随机采样的浮点数。如果没有提供参数,则返回从分布中随机采样的单个浮点数。

参数:
d0, d1, …, dnint,可选

返回数组的维度,必须是非负数。如果未提供参数,则返回单个 Python 浮点数。

返回值:
Zndarray 或 float

一个形状为 (d0, d1, ..., dn) 的数组,包含来自标准正态分布的浮点样本,或者如果未提供参数,则为单个这样的浮点数。

另请参阅

standard_normal

类似,但将元组作为其参数。

normal

还接受 mu 和 sigma 参数。

random.Generator.standard_normal

这应该用于新代码。

备注

对于来自均值为 mu 和标准差为 sigma 的正态分布的随机样本,请使用

sigma * np.random.randn(...) + mu

示例

>>> np.random.randn()
2.1923875335537315  # random

来自均值为 3、标准差为 2.5 的正态分布的二维四列数组样本

>>> 3 + 2.5 * np.random.randn(2, 4)
array([[-4.49401501,  4.00950034, -1.81814867,  7.29718677],   # random
       [ 0.39924804,  4.68456316,  4.99394529,  4.84057254]])  # random