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 的正态分布中抽取的 2x4 样本数组

>>> 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