numpy.random.randn#

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

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

注意

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

注意

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

如果提供正整数类参数,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