Ich versuche, die Daten von einem Excel-Blatt zu importieren, in dem 3 Spalten (Time; Id; und Data) sind.Wie kann ich Matlab mitteilen, dass einige der Daten, die importiert werden, in Hex angegeben sind?
Die erste Spalte enthält die Zeit (in Sekunden), während die nächste Spalte Nummern (Id) enthält. Die dritte Spalte (Data) hat jedoch Hexadezimalzahlen, daher kann Matlab diese Informationen nicht verarbeiten und zeigt 'NaN' im Befehlsfenster/in der Struktur, wenn ich versuche, Informationen aus der dritten Spalte abzurufen.
Ich möchte eine Struktur für jede Ids erstellen und innerhalb dieser Id die entsprechenden Informationen angezeigt werden soll.
Gibt es also sowieso die Informationen aus der dritten Spalte zu erhalten, ohne NaN Fehler zu bekommen?
mein Code hier:
[dat1, dat2, dat3] = xlsread('1');
flds=dat3(1,:);
bus=cell2struct(dat3(2:end,:),flds,2);
for k=1:length(bus)
if bus(k).Id == 150
i=i+1;
can_bus(k,:)
end
end
zeigen Sie ein paar Zeilen von Beispieldaten aus Ihrem Excel-Blatt? – anasimtiaz
Matlab importiert Hex-Werte als "String". Sie müssen die Funktion ['hex2dec'] (http://mathworks.com/help/matlab/ref/hex2dec.html) für diese Strings verwenden, bevor Sie sie als Zahlen behandeln können. – Hoki
@anasimtiaz Ich habe die Beispieldaten hinzugefügt. Bitte überprüfen Sie den Link. Vielen Dank – user161816