← 返回首页
random模块
发表时间:2024-01-18 00:39:44
random模块

random模块

1.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]