|
|
Bestimmung der Differenz zwischen zwei Datum/Zeit angaben |
|
Urlaub2222 |

Forum-Newbie
|
 |
Beiträge: 8
|
 |
|
 |
Anmeldedatum: 06.02.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.02.2013, 09:59
Titel: Bestimmung der Differenz zwischen zwei Datum/Zeit angaben
|
 |
Hallo,
ich habe Messdaten und möchte diese Trennen wenn zwischen den Datensätzen eine Pause größer als 10 Minuten ist.
Das Datumsformat ist Serialdate oder ein Datevector.
(Eine Lösung mit Serialdate wäre mir am liebsten)
Das Format ist "dd.mm.YYYY HH:MM:SS.FFF".
Wie kann ich die Differenz zweier Datensätze bestimmen und vor allem dann vergleichen ob sie größer als 10 Minuten ist?
Ich habe auch noch keine Lösung zum Trennen des Datensatzes. Wenn eine Differenz von Datensatz x zu seinem Vorgänger >10 Minuten ist, soll ein neuer Datensatz angelegt werden. Es müsste ja dynamisch jeh nach Anzahl der "Pausen" eine dementsprechende Anzahl an neuen Arrays erzeugt werden!?
Danke im voraus!
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 07.02.2013, 10:26
Titel:
|
 |
Hallo,
wenn du in Serial Dates umwandelst, kannst du die Zahlen ja "ganz normal" voneinander abziehen und hast dann die Differenz in Tagen. Das kannst du in Minuten umrechnen (*24*60) und dann problemlos mit 10 vergleichen.
Achtung: aufpassen wegen eventuellen Rundungsfehlern. Es könnte passieren, dass eine Zeitdifferenz von genau 10 Minuten minimal größer oder kleiner wirkt.
Grüße,
Harald
|
|
|
Urlaub2222 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 8
|
 |
|
 |
Anmeldedatum: 06.02.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 12:06
Titel: Rückfrage zum Serialdate
|
 |
Das hat soweit funktioniert, allerdings habe ich noch ein kleines Problem mit dem Serialdate:
Warum funktioniert folgender Code nicht?
ans = datenum('31.01.2013 13:14:44.333','dd.mm.YYYY HH:MM:SS.FFF')
datestr(ans)
ans = 24-Dec-2012 13:14:44
Warum kommt hier der 24 Dezember raus es müsste doch 31 Januar sein. Die Zeit stimmt komischerweise.
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 12:15
Titel:
|
 |
Hallo,
ich habe es gerade unter 2012b ausprobiert und bekomme das richtige Datum.
ans wird von MATLAB als Zwischenspeicher verwendet. Ich würde stattdessen andere Variablennamen verwenden.
Falls das nicht hilft: welche Version verwendest du?
Grüße,
Harald
|
|
|
Urlaub2222 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 8
|
 |
|
 |
Anmeldedatum: 06.02.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 12:23
Titel:
|
 |
R2011b (7.12.0.564)
Hier mal direkt das was ich Matlab eingegeben habe:
>> datestr(datenum('31.01.2013 13:14:44.333','dd.mm.YYYY HH:MM:SS.FFF'))
ans =
24-Dec-2012 13:14:44
|
|
|
Urlaub2222 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 8
|
 |
|
 |
Anmeldedatum: 06.02.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 12:26
Titel:
|
 |
Vorher habe ich clc; clear all; close all;
gemacht.
Wenn explizit in Test schreibe
>> Test=datestr(datenum('31.01.2013 13:14:44.333','dd.mm.YYYY HH:MM:SS.FFF'))
Test =
24-Dec-2012 13:14:44
bekomme ich das selbe Ergebniss.
Werde den Rechner auch mal neu starten....man weiß ja nie^^
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.500
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 12:48
Titel:
|
 |
Hallo,
ich konnte das Problem nun in einer älteren Version reproduzieren. Beheben kann man es, wenn man das Datumsformat korrekt angibt, also mit kleinen y.
Grüße,
Harald
|
|
|
Urlaub2222 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 8
|
 |
|
 |
Anmeldedatum: 06.02.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.02.2013, 13:03
Titel: Gelöst
|
 |
Super, das war das Problem. Jetzt geht es bei mir auch einwandfrei.
Vielen DANK!!!!!!!!
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|