Da Numpys Ndarray und Pythons eingebaute Liste durcheinander waren, habe ich versucht, jede Dimension und Größe auf meine eigene Weise zusammenzufassen. Dies ist eine Zusammenfassung der Anfänger.
Als Ergebnis von Google bestand die Hauptmethode zur Größenerfassung darin, die Funktion len (), die Funktion np.shape () und die Instanzvariable ndarray.shape zu verwenden.
Zusammenfassend denke ich, dass es billig wäre, wenn Sie ** np.shape () verwenden. Außerdem dachte ich, es wäre gut, sich daran zu erinnern, dass der integrierte Listentyp ** eine zweidimensionale Array-Darstellung unter Verwendung der Listeneinschlussnotation ** realisiert.
Wie bekomme ich die Größe | ndarray Typ | Eingebauter Listentyp |
---|---|---|
len() | Nur 1 Dimension | Nur 1 Dimension |
np.shape() | n Abmessungen | n Abmessungen |
ndarray.shape | n Abmessungen | - ※ |
Natürlich hat sich auch die Ausgabedarstellung je nach Typ und Dimension nicht geändert.
Abmessungen | ndarray Typ | Eingebauter Listentyp |
---|---|---|
1 Dimension | (3, ) | (3, ) |
2D | (3, 4) | (3, 4) ※ |
Die Funktion numpy.array () scheint ein praktisches Werkzeug zum einfachen Erstellen von ndarray zu sein.
Da es sich um einen numpy.ndarray-Typ handelt, ** gibt es kein ,
zwischen Zahlen **.
import numpy as np
A_np = np.array([5, 2], dtype=int)
B_np = np.array([10, 9], dtype=int)
C_np = np.array([1, 11], dtype=int)
D_np = np.array([9, 1], dtype=int)
#Ergebnis der Substitution
A_np : [5 2]
B_np : [10 9]
C_np : [ 1 11]
D_np : [9 1]
#Arraygröße
A_np.shape : (2,)
B_np.shape : (2,)
C_np.shape : (2,)
D_np.shape : (2,)
Eingebautes Python
Da es sich um ein integriertes Listenformat handelt, wird **, `zwischen Zahlen ** eingefügt.
A = [5, 2]
B = [10, 9]
C = [1, 11]
D = [9, 1]
#Ergebnis der Substitution
A : [5, 2]
B : [10, 9]
C : [1, 11]
D : [9, 1]
#Größe np.shape()Funktionsversion
np.shape(A) : (2,)
np.shape(B) : (2,)
np.shape(C) : (2,)
np.shape(D) : (2,)
#Größe len()Funktionsversion
len(A) : 2
len(B) : 2
len(C) : 2
len(D) : 2
Die 2. Dimension der integrierten Liste verwendet die "Listeneinschlussnotation".
A = [[12, -8, 4], [0, 6, -10]
#Ergebnis der Substitution
[[12, -8, 4], [0, 6, -10]
Die Ausgabe der integrierten Variablen len () enthält 2 Elemente in der Liste.
#Größe
len(A) : 2
Erstens bleibt der integrierte Listentyp erhalten
A = [[12, -8, 4], [0, 6, -10]]
A :
[[12, -8, 4], [0, 6, -10]]
np.shape(A) : (2, 3)
Zweitens in ndarray-Typ konvertieren
Da der integrierte Listentyp in dumpy.ndarray geändert wird, verschwindet das ,
zwischen den Zahlen.
A = [[12, -8, 4], [0, 6, -10]
A_np = np.array(A)
A_np :
[[ 12 -8 4]
[ 0 6 -10]]
A_np.shape : (2, 3)
Wenn Sie ein zweidimensionales Array mit dem integrierten Listentyp verwenden möchten, scheint es problematisch zu sein, wenn die Anzahl der Elemente jedes Elements unterschiedlich ist. Speziell,
A = [[12, -8, 4], [0, 6, -10, 2]]
Derzeit handelt es sich um ein integriertes zweidimensionales Array vom Listentyp mit zwei Elementen vom Listentyp.
Die Längen dieser Elemente sind unterschiedlich.
Das Ergebnis zu diesem Zeitpunkt ist
len(A) : 2
np.shape(A) : (2,)
Auch wenn in numpy.ndarray konvertiert
A_np = np.array(A)
A_np :
[[12, -8, 4] [0, 6, -10, 2]]
np.shape(A_np) : (2,)
Das ,
zwischen den Zahlen ist nicht weg, und die Elemente sind ein Array vom Listentyp ndarray (?).
Es tut mir leid, wenn ich etwas Seltsames gesagt habe. Ich bin nicht zuversichtlich.
Übrigens führte "np.array" ([[12, -8, 4] [0, 6, -10, 2]], dtype = int) "zu einem Fehler.
Mit anderen Worten, Listeneinschlussnotationen mit unterschiedlicher Anzahl von Elementen geben die Länge der Liste zurück, da die Größe nicht als Matrix gemessen werden kann. Nun, ist es natürlich?
Recommended Posts