numpy.random.Generator.random#
method
- random.Generator.random(size=None, dtype=np.float64, out=None)#
返回半开区间 [0.0, 1.0) 中的随机浮点数.
结果来自指定区间上的"连续均匀"分布.要对 \(Unif[a, b), b > a\) 进行采样,请使用
uniform或将random的输出乘以(b - a)并加上a(b - a) * random() + a
- 参数:
- sizeint 或 int 元组,可选
输出形状. 如果给定形状,例如
(m, n, k),则抽取m * n * k个样本. 默认为 None,在这种情况下,返回单个值.- dtypedtype,可选
结果的期望 dtype,仅支持 float64 和 float32 .字节顺序必须是 native.默认值为 np.float64.
- outndarray,可选
用于放置结果的替代输出数组.如果 size 不是 None,它必须与提供的 size 具有相同的形状,并且必须与输出值的类型匹配.
- 返回:
- outfloat 或浮点数的 ndarray
形状为 size 的随机浮点数数组(除非
size=None,在这种情况下返回单个浮点数).
参见
uniform从参数化的均匀分布中抽取样本.
示例
>>> rng = np.random.default_rng() >>> rng.random() 0.47108547995356098 # random >>> type(rng.random()) <class 'float'> >>> rng.random((5,)) array([ 0.30220482, 0.86820401, 0.1654503 , 0.11659149, 0.54323428]) # random
来自 [-5, 0) 的随机数的三行两列数组:
>>> 5 * rng.random((3, 2)) - 5 array([[-3.99149989, -0.52338984], # random [-2.99091858, -0.79479508], [-1.23204345, -1.75224494]])