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

前端之家收集整理的这篇文章主要介绍了如何获取numpy.random.choice的索引? – 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))将使用它遇到的值(上面的示例中的[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

猜你在找的Python相关文章