【发布时间】:2021-01-30 03:54:08
【问题描述】:
我正在尝试获取函数的索引值。但我想得到最小值而不是最大值,就像帖子一样:post。我试图将下面的函数转换为最小值,而不是最大值来获取索引。
最大值:
a = numpy.array([11, 2, 33, 4, 5, 68, 7])
b = numpy.array([0, 4])
min = numpy.minimum.reduceat(a,b)
索引函数
def numpy_argmin_reduceat_v2(a, b):
n = a.min()+1 # limit-offset
id_arr = np.zeros(a.size,dtype=int)
id_arr[b[1:]] = 1
shift = n*id_arr.cumsum()
sortidx = (a+shift).argsort()
grp_shifted_argmin = np.append(b[1:],a.size)-1
return sortidx[grp_shifted_argmin] - b
【问题讨论】:
-
你试过 numpy.argmin:numpy.org/doc/stable/reference/generated/numpy.argmin.html
-
如果解决了问题,请考虑接受答案
标签: python arrays function numpy vector