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])
  • 18
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值