Ich möchte auf eine bestimmte Zeilen- und Spaltenbeschränkung eines 2d-numpy-Arrays zugreifen.Einem Gitter eines NumPy-Arrays gegebene Zeilen- und Spaltenindizes zuweisen
> x
array([[1, 2, 0],
[3, 4, 0],
[0, 0, 1]])
Wenn ich tue, was natürlich scheint, bekomme ich nur die diagonalen Elemente des eingeschränkten Arrays.
> x[[0,1], [0,1]]
array([1, 4])
Stattdessen kann ich dies tun, um zu lesen, was ich will -
> x[[0,1],:][:,[0,1]]
array([[1, 2],
[3, 4]])
..aber es mich nicht lassen die Werte schreiben/zuordnen.
> x[[0,1],:][:,[0,1]] = np.array([[1,0],[0,1]])
> x
array([[1, 2, 0],
[3, 4, 0],
[0, 0, 1]])
Wie kann ich hier in eine Matrix schreiben?