我正在尝试获取数组中最小值的索引,例如:
ind = np.where((arr == arr.min()))
我想修改它,以便我可以忽略特定的值。 e.g:
ind = np.where((arr == arr[arr != value].min()))
上面的解决方案还可以,但可以做得更好吗?
答案 0 :(得分:2)
您可以创建一个蒙版数组,然后在其上使用np.where()
:
m = np.ma.masked_array(a, mask=(a==value))
np.where(m, m==m.min())
给你想要的东西。
答案 1 :(得分:0)
使用numpys argmin()
ind= np.argmin(arr[arr!=value])