如果有多个

时间:2015-09-05 18:32:39

标签: python numpy

只是想知道如果有多个最大值的索引,如何找到它们的索引?

我正在做的那一刻:

max = np.amax(V)
position = V.tolist().index(max)

但是说我们有V = [0,1,2,5,2,5,3] 我们将得到 max = 5 position = 3(但不是5?)

有人可以帮忙吗? 感谢

1 个答案:

答案 0 :(得分:3)

您可以使用np.nonzero查找等于最大值的索引:

>>> a
array([2, 5, 4, 4, 4, 2, 1, 1, 2, 2, 5, 4, 1, 4, 0, 0, 5, 1, 4, 1])
>>> np.nonzero(a == a.max())[0]
array([ 1, 10, 16])
>>> a[_]
array([5, 5, 5])