Ich habe 2 numpy Arrays output
und index
:Füllen Sie ein 3D-numpy Array mit denen auf einem 2D-Array basierten mit Indizes
output = np.zeros((3,3,3))
>>>index
array([[0,1,2],
[1,0,0],
[2,2,2]])
index
stellt den Index bis zu dem output
sollten mit denen in der ersten Dimension aufgefüllt werden. Der bestückte Wert von output
sollte wie folgt aussehen:
>>>output
array([[[1, 1, 1],
[1, 1, 1],
[1, 1, 1]],
[[0, 1, 1],
[1, 0, 0],
[1, 1, 1]],
[[0, 0, 1],
[0, 0, 0],
[1, 1, 1]]]
Da zum Beispiel index[0, 1] == 1
setzten wir output[:1+1, 0, 1] = 1
. Im Allgemeinen, wenn index[i, j] == k
, setzen wir output[:k+1, i, j] = 1
.
Kann jemand das vektorisiert erreichen?