加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何获取numpy.random.choice的索引? – Python

发布时间:2020-12-16 23:07:42 所属栏目:Python 来源:网络整理
导读:是否可以修改numpy.random.choice函数以使其返回所选元素的索引? 基本上,我想创建一个列表,随机选择元素而不需要替换 import numpy as np a = [1,4,1,3,2,4] np.random.choice(a) 4 a [1,4] a.remove(np.random.choice(a))将使用它遇到的值(上面的示例中的[
是否可以修改numpy.random.choice函数以使其返回所选元素的索引?
基本上,我想创建一个列表,随机选择元素而不需要替换
import numpy as np
>>> a = [1,4,1,3,2,4]
>>> np.random.choice(a)
>>> 4
>>> a
>>> [1,4]

a.remove(np.random.choice(a))将使用它遇到的值(上面的示例中的[1])删除列表的第一个元素,这可能不是所选元素(例如,[7 ]).

解决方法

这里有一种方法可以找出随机选择的元素的索引:
import random # plain random module,not numpy's
random.choice(list(enumerate(a)))[0]
=> 4      # just an example,index is 4

或者您可以在一个步骤中检索元素和索引:

random.choice(list(enumerate(a)))
=> (1,4) # just an example,index is 1 and element is 4

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读