numpy伪随机数的生成
normal函数
可以用normal来得到一个标准正态分布的4×4样本数组
>>> import numpy as np
>>> samples=np.random.normal(size=(4,4))
>>> samples
array([[-1.24275887, 0.82243858, -0.04646941, -0.6668008 ],
[ 0.2562527 , 1.42003215, 1.11415246, 0.49878296],
[-0.59063632, -1.43172294, 1.24651681, 0.26291333],
[ 0.89711844, 0.07983999, -1.61354204, 0.05503528]])
seed函数
这些都是伪随机数,是因为它们都是通过算法基于随机数生成器种子,在确定性的条件下生成的。可以用NumPy的np.random.seed更改随机数生成种子:
>>> np.random.seed(1234)
RandomState
numpy.random的数据生成函数使用了全局的随机种子。要避免全局状态,可以使用numpy.random.RandomState,创建一个与其它隔离的随机数生成器:
>>> rng=np.random.RandomState(1234)
>>> rng.randn(10)
array([ 0.47143516, -1.19097569, 1.43270697, -0.3126519 , -0.72058873,
0.88716294, 0.85958841, -0.6365235 , 0.01569637, -2.24268495])