我正在尝试在python中编写一段代码,以查找向量中最大元素的一个或多个索引。我知道如果只有一个最大值,可以使用“ argmax”来找到答案,但是如果我有一个具有两个最大值的向量怎么办?
答案 0 :(得分:2)
使用np.where
a=np.array([1,2,3,3])
np.where(a==np.max(a))[0]
答案 1 :(得分:0)
如果您要查找多个索引作为最大值:
li = [2, 7, 3, 7]
max_value = max(li)
max_value_indices = [i for i, e in enumerate(li) if e == max_value]
print(max_value_indexes)
对于单个情况:
li = [2, 7, 3]
print(li.index(max(li)))
答案 2 :(得分:0)
使用np.where
的解决方案:
import numpy as np
values = [1,6,3,4,5,6,6,5]
arr_values = np.array(values, copy=False)
indices= np.where(arr_values == max(arr_values))[0]