random模块
random模块常用函数如下: - np.random.seed - np.random.rand - np.random.randn - np.random.randint - np.random.choice - np.random.shuffle
import numpy as np
#如果使用相同的seed()值,则每次生成的随机数都相同
np.random.seed(1)
#每次值都相同
print(np.random.rand())
np.random.seed(100)
#每次值都相同
print(np.random.rand())
0.417022004702574
0.5434049417909654
#产生0-1之间的随机数
print(np.random.rand())
#产生随机数组 两行三列
print(np.random.rand(2,3))
0.27836938509379616
[[0.42451759 0.84477613 0.00471886]
[0.12156912 0.67074908 0.82585276]]
#生成均值(μ)为0,标准差(σ)为1的标准正态分布的值
#生成一个2行3列的数组,数组中的值都满足标准正态分布
data = np.random.randn(2,3)
print(data)
[[ 0.22117967 -1.07004333 -0.18949583]
[ 0.25500144 -0.45802699 0.43516349]]
#生成值在0-10之间,3行5列的数组
data1 = np.random.randint(10,size=(3,5))
print(data1)
#生成值在1-20之间,3行6列的数组
data2 = np.random.randint(1,20,size=(3,6))
print(data2)
[[6 2 0 8 2]
[5 1 8 1 5]
[4 2 8 3 5]]
[[15 1 14 13 11 4]
[ 7 4 16 11 16 4]
[10 17 12 5 6 8]]
data=[1,2,3,4,5,6,7,8,9,10]
#从数组中随机选择三个值
print(np.random.choice(data,3))
#从数组中获取值组成新的数组
print(np.random.choice(data,size=(3,4)))
#从指定值随机取值 (示例:从0-10之间随机取3个值)
print(np.random.choice(10,3))
[6 3 1]
[[ 1 10 2 6]
[ 3 4 7 2]
[ 5 4 2 5]]
[4 9 5]
#把原来数组的元素的位置打乱
arr = np.arange(10)
print(arr)
#将数组a的元素的位置都会进行随机更换
#shuffle没有返回值,直接打乱原数组位置
np.random.shuffle(arr)
print(arr)
[0 1 2 3 4 5 6 7 8 9]
[2 1 8 3 7 0 5 9 4 6]