Wie lese ich CSV-Daten in ein Datensatzarray in NumPy?
Sie können die Funktion numpy.genfromtxt()
verwenden, um CSV-Daten in ein NumPy-Datensatzarray zu lesen. Hier ist ein Beispiel-Code-Schnipsel:
import numpy as np
data = np.genfromtxt('data.csv', delimiter=',', names=True, dtype=None)
In diesem Beispiel ist data.csv
der Name der CSV-Datei, die Sie lesen möchten, delimiter=','
gibt an, dass die Spalten in der Datei durch Kommas getrennt sind, names=True
sagt der Funktion, dass die erste Zeile der Datei als Feldnamen für das Datensatzarray verwendet werden sollen, und dtype=None
sagt der Funktion, dass die Datentypen für jedes Feld automatisch ermittelt werden sollen.
Sie können auch den Datentyp mit einer Liste von Tupeln angeben, in denen jedes Tuple den Namen und den Datentyp eines Feldes enthält, wie folgt:
dtype=[('field1', 'i4'), ('field2', 'f4'), ('field3', 'a10')]
data = np.genfromtxt('data.csv', delimiter=',', names=True, dtype=dtype)
Hierbei entspricht 'i4' dem Code für eine 4-Byte-Ganzzahl, 'f4' dem Code für eine 4-Byte-Fließkommazahl und 'a10' dem Code für einen 10-Byte-String.