numpy.random.Generator.standard_normal#

方法

random.Generator.standard_normal(size=None, dtype=np.float64, out=None)#

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

参数:
size整数或整数的元组,可选

输出形状.如果给定的形状是,例如,``(m, n, k)``,那么会抽取 m * n * k 个样本.默认是 None,在这种情况下会返回一个单一值.

dtypedtype,可选

期望的结果数据类型,仅支持 float64float32.字节顺序必须是本地的.默认值是 np.float64.

outndarray, 可选

要在其中放置结果的替代输出数组.如果 size 不是 None,它必须与提供的 size 具有相同的形状,并且必须与输出值的类型匹配.

返回:
out浮点数或ndarray

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

参见

normal

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

备注

对于从均值为 mu 和标准差为 sigma 的正态分布中随机抽样,使用以下之一:

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

示例

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

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

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