Sie können die csvread
Funktion verwenden, um eine csv Datei zu lesen.
m=csvread('table.csv',1,0)
Die Werte werden in einer Matrix gespeichert.
Da Ihre Datei eine Kopfzeile hat, müssen Sie im Aufruf angeben, dass mit dem Lesen aus der zweiten Zeile der Datei begonnen wird.
Sie können es durch Hinzufügen von zwei Parametern im Aufruf:
- die erste, aus dem die Zeile definiert starten (Beachten Sie, dass der Index Null Basis) Lesen
- der zweite definiert die Spalte, aus der (im Fall des Beispiels aus dem ersten) starten
Wenn dennoch Sie textscan
verwenden, müssen Sie den Code wie folgt zu ändern:
fileID = fopen('table.csv');
% C = textscan(fileID,'%s %f %f %f %f %d %f','Delimiter',',');
C1 = textscan(fileID,'%s',2);
C2 = textscan(fileID,'%d%f%f%f%f%d%f','delimiter',',')
fclose(fileID);
Sie haben textscan
zweimal anrufen:
- das erste Mal ro die erste Zeile gelesen (der Kopf)
- das zweite Mal, um die Daten
Hinweis zu lesen, in der erste Aufruf der dritte Parameter im Aufruf: Er gibt an, dass die format
(%s
) zweimal verwendet werden muss.
Dies, weil in Ihrer Kopfzeile das letzte Wort durch eine space
getrennt ist. Nachdem Sie die Kopfzeile gelesen haben, rufen Sie textscan
an, um die numerischen Werte erneut zu lesen.
Warum nicht einfach verwenden 'readtable'? –
Möglicherweise müssen Sie die erste Zeile überspringen, bevor Sie 'textscan' verwenden – rayryeng