我的问题是关于我想使用 numpy 表达的特定数组操作。
我有一个浮点数数组w
和一个索引数组idx
与相同长度w
我想总结一下w
与相同的idx
值并将它们收集在数组中v
。
作为一个循环,它看起来像这样:
for i, x in enumerate(w):
v[idx[i]] += x
有没有办法通过数组操作来做到这一点?
我的猜测是v[idx] += w
但这是行不通的,因为idx
多次包含相同的索引。
Thanks!
numpy.bincount
为此目的引入了:
tmp = np.bincount(idx, w)
v[:len(tmp)] += tmp
我认为从 1.6 开始,您还可以将 minlength 传递给bincount
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)