Ich habe einen Datensatz, der als CSV-Datei gespeichert wird, die wie folgt aussieht:
%Vor%In R könnte ich diese Datei folgendermaßen öffnen:
%Vor% Gibt es in Matlab einen Standardbefehl, der .csv-Dateien mit numerischen und String-Variablen liest? csvread
scheint nur numerische Variablen zu mögen.
Ein Schritt weiter, in R könnte ich die attach-Funktion verwenden, um Variablen zu erzeugen, die den Spalten- und Spaltenheadern des Datensatzes zugeordnet sind, d. h.
%Vor%Gibt es in Matlab etwas Ähnliches?
Obwohl diese Frage fast ein exaktes Duplikat ist, ist die vorgeschlagene Lösung in dem von @NathanG bereitgestellten Link (dh mit xlsread
) nur eine Möglichkeit, Ihr Problem zu lösen. Der Autor im Link schlägt auch vor, textscan
zu verwenden, gibt aber keine Informationen darüber, wie es gemacht wird, also dachte ich, ich würde hier ein Beispiel hinzufügen:
Header
sollte jetzt ein Zeilenvektor von Zellen sein, wobei jede Zelle einen Header speichert. D
ist ein Zeilenvektor von Zellen, wobei jede Zelle eine Datenspalte speichert.
Es ist mir nicht möglich, D
an Header
anzuhängen. Wenn Sie wollten, könnten Sie beide in die gleiche Struktur bringen, zB:
Matlabs neue Tabellenklasse macht das einfach:
%Vor%Standardmäßig werden die Header analysiert und als Spaltennamen (auch als Variablennamen bezeichnet) verwendet:
%Vor%Sie können eine Spalte mit ihrem Namen usw. auswählen:
%Vor%Verfügbar seit Matlab 2013b. Siehe www.mathworks.com/help/matlab/ref/readtable.html
Tags und Links r matlab csv import-from-csv