Numpy随机数
1. Numpy随机数概述
在Numpy中包含的随机数生成函数如下表所示:
函数 | 函数功能 |
---|---|
rand(d0, d1, …, dn) | 返回输入数组维度对应的矩阵 |
randn(d0, d1, …, dn) | 返回输入数组维度对应服从标准正太分布的矩阵 |
randint(low[, high, size, dtype]) | 返回范围为[low, high)范围的整型随机数据 |
random_integers(low[, high, size]) | 返回[low, high]之间的随机整数 |
random_sample([size]) | 返回[0.0, 1.0)之间的浮点随机数 |
random([size]) | 从范围[0.0, 1.0)返回浮点随机数 |
ranf([size]) | 从范围[0.0, 1.0)返回浮点随机数 |
sample([size]) | 从范围[0.0, 1.0)返回浮点随机数 |
choice(a[, size, replace, p]) | 从给出的1维数组中产生其随机采样 |
bytes(length) | 返回随机字节 |
2. 随机数生成示例
2.1 rand(d0, d1, …, dn)
该函数返回规定维度的随机矩阵,随机数是来源于服从[1,0)分布的采样。
示例:
np.random.rand(3, 4)
[[ 0.9453398 0.15785589 0.14297825 0.40554182]
[ 0.58353036 0.16330881 0.79096958 0.29872379]
[ 0.30474484 0.85217927 0.06831362 0.61730196]]
2.2 randn(d0, d1, …, dn)
该函数返回规定维度的随机矩阵,随机数是来源于服从(0,1)标准正太分布的采样。该函数与random.standard_normal类似,可以通过如下算式得到相应的正太分布N(mu, sigma^2):
sigma * np.random.randn(…) + mu
示例:
np.random.randn(3, 4)
[[-2.30951289 -1.05847819 -0.06452076 -0.82147271]
[ 0.324241 -0.51254897 0.51067497 0.66082303]
[-0.0982416 0.78864197 -0.80479118 2.2884627 ]]