Ich empfehle die read_csv
Funktion aus der pandas
Bibliothek:
import pandas as pd
df=pd.read_csv('myfile.csv', sep=',',header=None)
df.values
array([[ 1. , 2. , 3. ],
[ 4. , 5.5, 6. ]])
Dies ergibt einen Pandas DataFrame - erlaubend viele nützliche Funktionen zur Datenmanipulation, die mit Numpy-Datensatzfeldern nicht direkt verfügbar sind .
DataFrame ist eine 2-dimensionale beschriftete Datenstruktur mit Spalten von potentiell verschiedenen Typen. Man kann es sich wie eine Tabellenkalkulation oder SQL-Tabelle...
Ich würde auch empfehlen genfromtxt
. Da jedoch in der Frage nach einer Datensatz-Array im Gegensatz zu einem normalen Array, das dtype=None
muss der Parameter genfromtxt
anrufen:
Gegeben eine Eingabedatei, myfile.csv
:
1.0, 2, 3
4, 5.5, 6
import numpy as np
np.genfromtxt('myfile.csv',delimiter=',')
ergibt ein Array:
array([[ 1. , 2. , 3. ],
[ 4. , 5.5, 6. ]])
y
np.genfromtxt('myfile.csv',delimiter=',',dtype=None)
ergibt ein Datensatz-Array:
array([(1.0, 2.0, 3), (4.0, 5.5, 6)],
dtype=[('f0', '<f8'), ('f1', '<f8'), ('f2', '<i4')])
Dies hat den Vorteil, dass die Datei mit mehrere Datentypen (einschließlich Strings) können leicht importiert werden .