numpy.random.RandomState.randn#

方法

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

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

注意

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

注意

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

如果提供了正的 int_like 参数,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