fragen sich, ob es eine einfache Möglichkeit, dies zu tun:in einer bestimmten Dimension angegebene Werte auf numpy Array ändern
sagt, dass ich mit der Form (2,3,2)
, beispielsweise einen numpy Array:
x =
[[[ 0, 1],
[ 2, 3],
[ 4, 5]],
[[ 6, 7],
[ 8, 9],
[10,11]]]
Wenn ich wollte alle Einträge ersetzen, den axis=1
entsprechen und position=0
, mit Null, er könnte dies leicht tun:
x[:,0,:] = 0
x =
[[[ 0 0]
[ 2 3]
[ 4 5]]
[[ 0 0]
[ 8 9]
[10 11]]]
jedoch wh Wenn ich eine Liste von Achsen hatte, mit denen ich diese Operationen ausführen wollte. Gibt es dafür eine eingebaute Numpy-Funktion? Im Idealfall würde es in etwa so aussehen:
array_replace(array=x,axis=1,pos=0,replace_val=0)
, die wie oben die gleiche Anordnung geben würde.
Ich kann mir eine Möglichkeit vorstellen, dies zu tun, indem ich Matrizen abflachen und berechnen würde, wo die Positionen jeder Variablen auf der Dimension jedes Arrays basieren würden, aber ich frage mich, ob es schon etwas in Numpy eingebaut hat.
Ich bin nicht sicher, was Sie wollen, aber das ist nicht der beste Weg, es zu tun, ich garantieren kann. Numpy ist stark genug, dass solche Operationen leicht vektorisiert werden können. –