基于索引数组构建数组之和

时间:2016-02-04 00:48:29

标签: arrays numpy indexing

我有三个数组

A = array([0, 0, 0, 0])

B = array([0.4, 0.3, 0.2, 0.1])

C = array([0, 0, 1, 2])

我想为数组A的每个元素i分配数组B的所有元素的总和,其中数组C指向i。结果应该是

A = array([0.7, 0.2, 0.1, 0])

到目前为止,我得到了如下所需的结果:

for i in np.unique(C):
 A[i] = np.sum(B[C==i])

数组很大,循环很慢。我试图在没有循环的情况下实现这一点,但我不知道如何。谢谢你的建议!

0 个答案:

没有答案