Verfasst am: 25.04.2017, 10:13
Titel: Datum richtig einlesen und erkennen
Hallo,
ich habe folgendes Problem bei dem Einlesen meiner Daten aus einer .CSV Datei:
Die Datei besteht aus einer Tabelle mit 5 Spalten, die bis auf die Spalte mit dem time stamp richtig erkannt wird. Nur in der Spalte mit dem Datum kommt die Meldung "NaT".
Der time stamp unterliegt keinem Algorithmus, sprich Matlab muss genau das zugehörige Datum erkennen.
Mein bisheriger Code:
Code:
formatSpec = '%{yyyy-mm-dd HH:MM:SS.FFF}D%f%f%f%f';
T = readtable('vehicle_data_report.csv','Delimiter',';', ...
'Format',formatSpec);
Der time stamp liegt genau in dem Format yyyy-mm-dd HH:MM:SS.FFF vor. Wie bekomme ich also Matlab jetzt dazu die time stamp Spalte auch als Datum mit Uhrzeit zu erkennen?
danke für den konstruktiven Hinweis. Anbei habe ich jetzt einen Auschnitt meiner Tabelle. Dabei ist mir aufgefallen, dass es anscheinend Fehler bei der Zeit/Datenerfassung gibt, so dass zwischen den eigentlich fortlaufenden Daten auf einemal der 2.12.16(falsches Datum davor und danach 15.11.16) kurzzeitig auftaucht. Ist es daher für Matlab vielleicht ein Problem, wenn keine erkennbare Reihenfolge der time stamp Daten vorliegt?
Grüße,
Anna
p.s.: Ich habe die Datei in eine .XLS Datei umgewandelt, da ich .CSV nicht hochladen konnte.
was passiert denn, wenn du es mit dem angepassten Datumsformat versuchst?
.csv-Dateien kannst du gezippt anhängen.
Die unsortierten Datumsangaben in der ersten Spalte sollten kein Problem sein.
Wenn ich die Excel-Datei öffne, hat die erste Spalte ein anderes Format als von dir angegeben. Außerdem würde ich eher die letzte Spalte als Problem sehen, da ich dort mittendrin Datumsangaben sehe.
bei der schnellen Datenübertragung der .CSV Datei in Excel treten diese Fehler in Form eines Datums anstatt einer Zahl in der letzten Spalte auf. Daher will ich eigentlich am liebsten auch Excel komplett außen vor lassen.
Daher habe ich jetzt einfach noch mal die .CSV Datei gezippt anghängt.
Das hätte ich alleine echt nicht geschafft. Die Millisekunde sind mir eigentlich egal. So genau muss ich nicht auswerten.
Hast du auch eine Idee, wie ich jetzt die erfassten Daten Pro Datum (Tag) mitteln kann? So dass sich meine Messdaten um ein Vielfaches kürzen.
Das ganze soll dann in einer neuen Matrix stehen, so dass ich damit einen besseren Überblick über den groben Verlauf bekomme.
die Daten werden ja per Tag zusammengefasst, nur brauche ich sie nun aber leider doch in Viertelstundenwerten. Hat jemand eine Idee, wie ich die bestehende Auswertung...
Damit sollte HH:MM:SS abgebildet werden auf
HH:00:SS, falls 0 <= MM < 15
HH:15:SS, falls 15 <= MM < 30
HH:30:SS, falls 30 <= MM < 45
HH:45:SS, falls 45 <= MM < 60
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.