np.random.choice用法

np.random.choice(a, size, replace, p) 其作用是按要求生成一个一维数组
a是生成一维数组的来源,可以是int类型,可以是数组,也可以是list
size 为从a中抽取的个数,即生成数组的维度
replace 表示从a中是否不重复抽取,默认可重复
p 给出抽取概率,默认随机
例子如下

>>> import numpy as np
>>> a1 = np.random.choice(7,5) # 从0~7中随机选择5个数组成一维数组
>>> a1
array([3, 1, 0, 1, 4])
>>> a2 = np.random.choice([0,1,2,3,4,5,6],5) # 从给定list中随机选择5个数组成一维数组
>>> a2
array([1, 6, 6, 6, 4])
>>> a3 = np.random.choice(np.array([0,1,2,3,4,5,6]),5) # 将list换成array数组依然可以运行,效果一致
>>> a3
array([3, 0, 5, 5, 3])
>>> a4 = np.random.choice([0,1,2,3,4,5,6],5,replace=False) # 上述均有重复,将replace设置为False,即可按要求没有重复的选取
>>> a4
array([0, 4, 3, 6, 5])
>>> a5 = np.random.choice(np.array([0,1,2,3,4,5,6]),5,p=[0.1,0.1,0.1,0.1,0.1,0.1,0.4]) 
# 给出选取概率p,注意p的维度和a的维度一致,并且p中概率和为1
>>> a5
array([6, 3, 2, 6, 6])
发布了26 篇原创文章 · 获赞 17 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_39704651/article/details/97420048