numpy.random.standard_normal#

random.standard_normal(size=None)#

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

注意

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

参数:
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