我需要找到一个数组中多个最小值出现的索引。我对np.argmin
非常熟悉,但它只会给我数组中第一个最小值的索引。例如:
a = np.array([1,2,3,4,5,1,6,1])
print np.argmin(a)
这让我得到了0,但我期望的是0、5、7。
谢谢!
这应该能起到作用:
a = np.array([1,2,3,4,5,1,6,1])
print np.where(a == a.min())
在这种情况下,argmin并不像你期望的那样返回一个列表。
min
。 - Bas Swinckelsmymin = np.min(a)
min_positions = [i for i, x in enumerate(a) if x == mymin]
a = np.array([1,2,3,4,5,1,6,1])
min_val = a.min()
print "min_val = {0}".format(min_val)
# Find all of them
min_idxs = [idx for idx, val in enumerate(a) if val == min_val]
print "min_idxs = {0}".format(min_idxs)
np.where(a == a.min())
。 - Kobi K