Konvertieren Sie 3D-Array in 2D-Array in Python
In diesem Tutorial wird die Konvertierung eines 3D-Arrays in ein 2D-Array in Python erläutert.
Konvertieren von ein 3D-Array in ein 2D-Array mit der Funktion numpy.reshape()
in Python
Die Funktion numpy.reshape()
([numpy.reshape - NumPy v1.20 Manual]) ändert die Form eines Arrays, ohne seine Daten zu ändern. numpy.reshape()
gibt ein Array mit den angegebenen Dimensionen zurück. Wenn wir beispielsweise ein 3D-Array mit den Dimensionen (4, 2, 2)
haben und es in ein 2D-Array mit den Dimensionen (4, 4)
konvertieren möchten.
Das folgende Codebeispiel zeigt, wie wir mit der Funktion numpy.reshape()
ein 3D-Array mit den Dimensionen (4, 2, 2)
in Python in ein 2D-Array mit den Dimensionen (4, 4)
konvertieren können.
import numpy
arr = numpy.array(
[[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(4, 2 * 2)
print(newarr)
Ausgabe:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
Im obigen Code initialisieren wir zuerst ein 3D-Array arr
mit der Funktion numpy.array()
und konvertieren es dann mit der Funktion numpy.reshape()
in ein 2D-Array newarr
.
Das folgende Codebeispiel zeigt eine andere Möglichkeit, dasselbe zu tun, wenn wir aus irgendeinem Grund die genauen Abmessungen des 3D-Arrays nicht kennen.
import numpy
arr = numpy.array(
[[[0, 1], [2, 3]], [[4, 5], [6, 7]], [[8, 9], [10, 11]], [[12, 13], [14, 15]]]
)
newarr = arr.reshape(arr.shape[0], (arr.shape[1] * arr.shape[2]))
print(newarr)
Ausgabe:
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]
[12 13 14 15]]
Im obigen Code verwenden wir die Funktion numpy.shape()
, um die Abmessungen des newarr
anzugeben. Die Funktion numpy.shape()
gibt ein Tupel zurück, das die Anzahl der Elemente in jeder Dimension eines Arrays enthält.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn