Ich habe so etwas wie eine 2D-Liste
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
und ich möchte es in ein 2d numpy Array konvertieren. Können wir es tun, ohne Speicher wie zuzuweisen
numpy.zeros((3,3))
und dann Werte speichern?
Ich habe so etwas wie eine 2D-Liste
a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
und ich möchte es in ein 2d numpy Array konvertieren. Können wir es tun, ohne Speicher wie zuzuweisen
numpy.zeros((3,3))
und dann Werte speichern?
Antworten:
Übergeben Sie die Liste einfach an np.array
:
a = np.array(a)
Sie können diese Gelegenheit auch nutzen, um festzulegen, dtype
ob die Standardeinstellung nicht Ihren Wünschen entspricht.
a = np.array(a, dtype=...)
Ich verwende große Datenmengen, die im Formular in eine Python-Datei exportiert wurden
XVals1 = [.........]
XVals2 = [.........]
Jede Liste hat die gleiche Länge. ich benutze
>>> a1 = np.array(SV.XVals1)
>>> a2 = np.array(SV.XVals2)
Dann
>>> A = np.matrix([a1,a2])
Verwenden Sie einfach den folgenden Code
c = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
matrix([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
Dann wird es dir geben
Sie können Form und Abmessung der Matrix mithilfe des folgenden Codes überprüfen
Form
c.ndim
np.array()
ist noch mächtiger als das, was unutbu oben gesagt hat. Sie können es auch verwenden, um eine Liste von np-Arrays in ein Array mit höherer Dimension zu konvertieren. Das folgende Beispiel ist einfach:
aArray=np.array([1,1,1])
bArray=np.array([2,2,2])
aList=[aArray, bArray]
xArray=np.array(aList)
xArrays Form ist (2,3), es ist ein Standard-NP-Array. Diese Operation vermeidet eine Schleifenprogrammierung.