Intuition und Idee hinter der Umformung eines 4D-Arrays in ein 2D-Array in NumPy
In NumPy erfordert die Umformung mehrdimensionaler Arrays ein Verständnis der Achsenpermutationen und der Reshape-Funktion. Um ein 4D-Array in ein 2D-Array umzuformen, befolgen wir normalerweise einen dreistufigen Prozess:
-
Achsen permutieren: Ordnen Sie die Abmessungen des Arrays neu an, um sie an die gewünschte Ausgabeform anzupassen. Dies geschieht mit Funktionen wie Transpose, Moveaxis, Rollaxis oder Swapaxes.
-
Achsen teilen oder zusammenführen: Passen Sie die Dimensionalität des Arrays an, indem Sie neue Achsen erstellen (aufteilen) oder vorhandene Achsen kombinieren ( Zusammenführen).
-
Umformen: Verwenden Sie die Umformfunktion, um die Form des Arrays an die gewünschte Ausgabegröße anzupassen.
Beispiel
Betrachten Sie das folgende 4D-Array:
array([[[[ 0, 0],
[ 0, 0]],
[[ 5, 10],
[15, 20]]],
[[[ 6, 12],
[18, 24]],
[[ 7, 14],
[21, 28]]]])
Nach dem Login kopieren
Um es in (4,4) umzuformen:
-
Achsen permutieren: Wir Ich möchte, dass die Achsenreihenfolge (0, 1, 3, 2) ist. Dies kann durch Transponieren erreicht werden:
a = a.transpose((2, 0, 3, 1))
Nach dem Login kopieren
-
Achsen teilen: Führen Sie keine Teilung durch, da wir bereits die richtige Anzahl an Dimensionen haben.
-
Umformen: Umformen in die gewünschte Form:
a = a.reshape(4,4)
Nach dem Login kopieren
Ergebnis:
array([[ 0, 5, 0, 10],
[ 6, 7, 12, 14],
[ 0, 15, 0, 20],
[18, 21, 24, 28]])
Nach dem Login kopieren
Das obige ist der detaillierte Inhalt vonWie forme ich ein 4D-NumPy-Array in ein 2D-Array um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!