Ich versuche, +1 auf einige spezifische Zellen eines numpy Array zusammenzufassen, aber ich kann nicht jede mögliche Weise, ohne langsame Schleifen finden:Accumulate konstanten Wert in Numpy Array
coords = np.array([[1,2],[1,2],[1,2],[0,0]])
X = np.zeros((3,3))
for i,j in coords:
X[i,j] +=1
Resultat:
X = [[ 1. 0. 0.]
[ 0. 0. 3.]
[ 0. 0. 0.]]
X[coords[:,0],coords[:,1] += 1
kehrt
X = [[ 1. 0. 0.]
[ 0. 0. 1.]
[ 0. 0. 0.]]
Jede Hilfe?
Danke, ich habe nicht darüber nachgedacht. Ich erwartete, dass numpy eine viel einfachere Lösung für solch eine triviale Operation zur Verfügung stellen würde. – memecs
@memecs: IMHO trivial oder nicht, ich glaube nicht, dass es * das * üblich ist, und das ist es, was zählt, wenn einfachere Problemlösungen implementiert werden. ;-) – Peque