import numpy as np
1、两种方式设定相同的随机数的值:np.random.seed()和np.random.RandomState()
np.random.seed(42) a=np.random.rand(1,10) b=np.random.rand(1,10) print(a) print(b)
输出:
[[0.37454012 0.95071431 0.73199394 0.59865848 0.15601864 0.15599452
0.05808361 0.86617615 0.60111501 0.70807258]]
[[0.02058449 0.96990985 0.83244264 0.21233911 0.18182497 0.18340451
0.30424224 0.52475643 0.43194502 0.29122914]]
r=np.random.RandomState(42) a=r.rand(1,10) r=np.random.RandomState(42) b=r.rand(1,10)
输出:
a
Out[31]:
array([[0.37454012, 0.95071431, 0.73199394, 0.59865848, 0.15601864,
0.15599452, 0.05808361, 0.86617615, 0.60111501, 0.70807258]])
b
Out[32]:
array([[0.37454012, 0.95071431, 0.73199394, 0.59865848, 0.15601864,
0.15599452, 0.05808361, 0.86617615, 0.60111501, 0.70807258]])
可以用RandomState代替seed
a=np.random.RandomState(None).randn(4) b=np.random.RandomState(None).randn(4) print(a) print(b)
变量a、b的值不一样。
2、
numpy.random.rand(d0,d1,…,dn)
- rand函数根据给定维度生成[0,1)之间的数据,包含0,不包含1
- dn表格每个维度
- 返回值为指定维度的array
np.random.randn(d0,d1,…,dn)
- randn函数返回一个或一组样本,具有标准正态分布。
- dn表格每个维度
- 返回值为指定维度的array
np.random.randint(low, high=None, size=None, dtype=’l’)
- 返回随机整数,范围区间为[low,high),包含low,不包含high
- 参数:low为最小值,high为最大值,size为数组维度大小,dtype为数据类型,默认的数据类型是np.int
- high没有填写时,默认生成随机数的范围是[0,low)
np.random.random_integers(low, high=None, size=None)
- 返回随机整数,范围区间为[low,high],包含low和high
- 参数:low为最小值,high为最大值,size为数组维度大小
- high没有填写时,默认生成随机数的范围是[1,low]
- 该函数在最新的numpy版本中已被替代,建议使用randint函数
np.random.random_sample(size=None) np.random.random(size=None) np.random.ranf(size=None) np.random.sample(size=None)
- 生成[0,1)之间的浮点数
np.random.choice(a, size=None, replace=True, p=None)
- 从给定的一维数组中生成随机数
- 参数: a为一维数组类似数据或整数;size为数组维度;p为数组中的数据出现的概率
- a为整数时,对应的一维数组为np.arange(a)
浙公网安备 33010602011771号