English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Die Form des Arrays ist die Anzahl der Elemente in jeder Dimension.
Drucke 2-D-Array Form:
import numpy as np arr = np.array([1, 2, 3, 4], [5, 6, 7, 8]) print(arr.shape)
Laufender Output
(2, 4)
Das obige Beispiel gibt zurück (2, 4) bedeutet, dass das Array 2 Dimensionen, wobei jede Dimension 4 Elementen.
mit dem Wert von ndmin verwenden 1,2,3,4 des Vektors 5 Dimensionen Array, und überprüfe den Wert der letzten Dimension 4:
import numpy as np arr = np.array([1, 2, 3, 4, ndmin=5) print(arr) print('shape of array:', arr.shape)
Laufender Output
[[[[[1 2 3 4]]]] shape of array : (1, 1, 1, 1, 4)
jeder Index gibt die Anzahl der Elemente in der entsprechenden Dimension an.
Index im obigen Beispiel 4unser Wert ist 4, daher kann gesagt werden, dass der 5 von ( 4 + 1 te Dimension hat 4 Elementen.
Die Form des Arrays ist die Anzahl der Elemente in jeder Dimension. Durch Ändern der Arrayform können wir Dimensionen hinzufügen oder entfernen oder die Anzahl der Elemente in jeder Dimension ändern.
Nachfolgendes Array mit 12 Elementen 1-D-Array in 2-D-Array.
die äußere Dimension wird 4 D-Arrays, wobei jedes Array 3 Elemente:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(4, 3) print(newarr)
Laufender Output
[[ 1 2 3] [ 4 5 6] [ 7 8 9] [10 11 12]]
Nachfolgendes Array mit 12 Elementen 1-D-Array in 3-D-Array.
die äußere Dimension haben wird 2 D-Arrays, die 3 D-Arrays, wobei jedes Array 2 Elemente:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(2, 3, 2) print(newarr)
Laufender Output
[[[ 1 2] [ 3 4] [ 5 6]] [[ 7 8] [ 9 10] [11 12]]
Ja, solange die notwendigen Elemente in beiden Formen gleich sind.
können wir 8 Elemente 1D-Array umformen 2 Zeilen 2D-Array 4 Elemente erfordern würde, aber wir können sie nicht in das 3 Elemente 3 Zeilen 2D-Array, da dies 3x3 = 9 Elementen.
Versuche eine Liste mit 8 Elementen 1Elementen mit jeder Dimension 3 Elementen 2D-Array in
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(3, 3) print(newarr)
Laufender Output
D-Array (verursacht Fehler): Traceback (letzte Anrufung zuerst): 5Datei "test.py", Zeile
Unbekannte Dimension
Sie können eine "unbekannte" Dimension verwenden.
Das bedeutet, dass Sie für eine Dimension keine genaue Zahl in der reshape-Methode angeben müssen. -1 weitergeben
als Wert, NumPy berechnet für Sie diese Zahl. 8 Elementen 1D-Array in 2x2 Elementen 3D-Array:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(2, 2, -1) print(newarr)
Laufender Output
[[[1 2] [3 4]] [[5 6] [7 8]]
Das Flattening der Arrays bezieht sich darauf, mehrdimensionale Arrays in 1D-Array.
Wir können reshape verwenden(-1) verwenden.
Um dies zu erreichen, können wir 1D-Array:
import numpy as np arr = np.array([1, 2, 3], [4, 5, 6]) newarr = arr.reshape(-1) print(newarr)
Laufender Output
[1 2 3 4 5 6]
Es gibt viele Funktionen, die die Form der Arrays flatten, ravel ändern können, und die Elemente neu anordnen können rot90、flip、fliplr、flipud und andere. Diese Funktionen gehören zum mittleren bis hohen Niveau von numpy.