numpy.random模块可以高效生成多种概率分布下的完整样本值数组。例如用normal来获得正态分布样本数组
1 2 3 4 5 6
| samples = np.random.normal(size=(4,4)) print(samples) ==> [[ 0.47198411 1.64333761 1.05519358 -0.53290582] [ 1.56804504 -0.99550696 -0.83978806 -0.69986521] [ 0.9641456 -0.05924003 0.10062456 -1.15433177] [-0.37968297 -0.69634852 0.79328 -0.22803585]]
|
这在生成样本的时候比纯python快了一个数量级。
之所以是伪随机数是因为它们是由具有确定性行为的算法根据随机数生成器中的随机数种子生成的。可以用np.random.seed更改Numpy的随机数种子
可以用numpy.random.Randomstate生成一个随机数生成器,使之独立于全局
1 2 3
| rng = np.random.RandomState(1234) print(rng.randn(10)) ==> [ 0.47143516 -1.19097569 1.43270697 -0.3126519 -0.72058873 0.88716294 0.85958841 -0.6365235 0.01569637 -2.24268495]
|
下面是numpy.random中的部分函数列表
