numpy count同一组中积分的成本总和

时间:2015-08-16 19:01:43

标签: performance numpy

我有一个向量,其中索引i的每个点都属于组向量[i]

vector=np.array([[1,1,4,1,4,3,1]])

每个点我都有成本:

cost=np.array([[10,10,40,1,4,1,2]])

我希望以有效的方式计算每个组的成本总和,无需循环。

对于这个例子我除了得到输出:

[[23,23,44,23,44,1,23]]

对于组1,其10 + 10 + 1 + 2 = 23
对于第2组,其40 + 4 = 44
对于第3组,它只是1

1 个答案:

答案 0 :(得分:2)

只需:

counts = np.bincount(vector, weights=cost)
output = counts[vector]