numpy.random.standard_normal#

random.standard_normal(size=None)#

从标准正态分布(均值为 0,标准差为 1)中抽取样本。

注意

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

参数:
sizeint 或 int 元组,可选

输出形状。如果给定形状为,例如,(m, n, k),则将抽取 m * n * k 个样本。默认值为 None,在这种情况下将返回单个值。

返回值:
outfloat 或 ndarray

形状为 size 的抽取样本的浮点数组,如果未指定 size,则为单个样本。

另请参阅

normal

具有附加 locscale 参数的等效函数,用于设置均值和标准差。

random.Generator.standard_normal

对于新代码应该使用此函数。

注释

对于来自均值为 mu 且标准差为 sigma 的正态分布的随机样本,请使用以下之一:

mu + sigma * np.random.standard_normal(size=...)
np.random.normal(mu, sigma, size=...)

示例

>>> np.random.standard_normal()
2.1923875335537315 #random
>>> s = np.random.standard_normal(8000)
>>> s
array([ 0.6888893 ,  0.78096262, -0.89086505, ...,  0.49876311,  # random
       -0.38672696, -0.4685006 ])                                # random
>>> s.shape
(8000,)
>>> s = np.random.standard_normal(size=(3, 4, 2))
>>> s.shape
(3, 4, 2)

来自均值为 3 且标准差为 2.5 的正态分布的样本的 2x4 数组

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