其他分享
首页 > 其他分享> > 带有重复索引的增量Numpy多维数组

带有重复索引的增量Numpy多维数组

作者:互联网

我对Increment Numpy array with repeated indices的多维情况感兴趣.

我有一个N维数组和一组N个索引数组,这些值是我想增加的值.索引数组可能有重复的条目.

没有重复,解决方案是

a = arange(24).reshape(2,3,4)
i = array([0,0,1])
j = array([0,1,1])
k = array([0,0,3])
a[i,j,k] += 1

使用重复,(例如j = array([0,0,2])),我无法使numpy增加重复项.

解决方法:

这个怎么样:

import numpy as np
a = np.zeros((2,3,4))
i = np.array([0,0,1])
j = np.array([0,0,1])
k = np.array([0,0,3])

ijk = np.vstack((i,j,k)).T
H,edge = np.histogramdd(ijk,bins=a.shape)
a += H  

标签:indexing,arrays,python,numpy
来源: https://codeday.me/bug/20191208/2087625.html