3
Bei einem 3D-Array a möchte ich np.transpose für jedes Element im ersten Index aufrufen.
beispielsweise angesichts der Array:So transponieren Sie jedes Element in einem 3D-np-Array
array([[[1, 1, 1, 1],
[1, 1, 1, 1],
[1, 1, 1, 1]],
[[2, 2, 2, 2],
[2, 2, 2, 2],
[2, 2, 2, 2]],
[[3, 3, 3, 3],
[3, 3, 3, 3],
[3, 3, 3, 3]])
ich will:
array([[[1, 1, 1],
[1, 1, 1],
[1, 1, 1],
[1, 1, 1]],
[[2, 2, 2],
[2, 2, 2],
[2, 2, 2],
[2, 2, 2]],
[[3, 3, 3],
[3, 3, 3],
[3, 3, 3],
[3, 3, 3]]])
Grunde möchte ich jedes Element innerhalb der Matrix transponieren. Ich habe versucht, es umzugestalten, aber ich finde keinen guten Weg, es zu tun. Es durchzudrehen und transponieren, wäre zu langsam. Irgendein Rat?
zur Umsetzung geben Sie die 'transpose' docs lesen. Es braucht einen Parameter. Etwas wie 'a.transpose ([0,2,1])'. – hpaulj
Ist Ihr Array gerade mit 1,2 und 3 gefüllt, wie Sie zeigen? Wenn dies der Fall ist, wird die einfache Umformung funktionieren: 'arr.reshape (3,4,3)' – Julien
Ihr Beispiel ist mehrdeutig. Es könnte ein Transpositions- oder Umformfall sein. – hpaulj