【问题标题】:How to retrieve the index of a non-unique element in a list randomly chosen with np.random.choice?如何在使用 np.random.choice 随机选择的列表中检索非唯一元素的索引?
【发布时间】:2016-12-02 12:07:09
【问题描述】:

如果我有如下列表:

a = [1, 2, 3, 3, 4, 5]

我想使用np.random.choice 从这个列表中选择一个随机元素,假设我得到值 3,我应该如何获得元素 3 的正确索引,而不是自动获得第一个3 出现?

我知道唯一值列表,我可以使用.index 来获取它,但不确定如何处理非唯一值。

谢谢!

【问题讨论】:

标签: python numpy


【解决方案1】:

你当然不能。如果您需要选择值的索引,您宁愿先选择一个随机索引,然后检索所需的列表元素:

index = random.randrange(0, len(a))
value = a[index]

请注意,即使元素是唯一的,使用.index 方法也不是很好,因为该方法必须对列表执行线性搜索(即,将每个元素与您的值进行比较,直到找到它)

【讨论】:

    猜你喜欢
    • 2019-08-13
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 1970-01-01
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 2014-07-28
    相关资源
    最近更新 更多