您当前的位置: 首页 >  Python

Better Bench

暂无认证

  • 2浏览

    0关注

    695博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Python-numpy】numpy.random.choice()解析与使用

Better Bench 发布时间:2021-01-05 16:00:32 ,浏览量:2

1 作用

根据给定的一维数组生成随机样本

2 参数解析 numpy.random.choice(a,size = None,replace = True,p = None )
  • a 是一维数组状或整数,如果是数组,则会从其元素生成随机样本。如果为int,则生成随机样本,就是a=np.arange(a)

  • size 是int或int元组,可选。输出的形状。默认值为无,在这种情况下,将返回单个值。

  • replace 布尔值,可选,sample是否更换

  • p 一维数组状,可选,与a中每个条目关联的概率。如果未给出,则样本将假定a中所有条目的均匀分布。

3 举例使用

1、从大小为3的np.arange(5)生成均匀的随机样本:

np.random.choice(5, 3)#等同于np.random.randint(0,5,3)

输出 array([0, 3, 4])

2、从大小为3的np.arange(5)生成非均匀随机样本:

np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0])

输出 array([3, 3, 0])

3、从大小为3的np.arange(5)生成一个均匀的随机样本,而无需替换:

np.random.choice(5, 3, replace=False)#等同于np.random.permutation(np.arange(5))[:3]

输出 array([3,1,0])

4、从大小为3的np.arange(5)生成非均匀随机样本,而无需替换:

np.random.choice(5, 3, replace=False, p=[0.1, 0, 0.3, 0.6, 0])

array([2, 3, 0])

5、可以使用类似任意数组的形式重复上述操作,而不仅仅是整数。例如:

aa_milne_arr = ['pooh', 'rabbit', 'piglet', 'Christopher']
np.random.choice(aa_milne_arr, 5, p=[0.5, 0.1, 0.1, 0.3])

输出 array([‘pooh’, ‘pooh’, ‘pooh’, ‘Christopher’, ‘piglet’], dtype=’

关注
打赏
1665674626
查看更多评论
立即登录/注册

微信扫码登录

0.0405s