How to find the transition for datetime data?

8 Ansichten (letzte 30 Tage)
Kasih Ditaningtyas Sari Pratiwi
Kommentiert: Peter Perkins am 20 Nov. 2017
Hi I have a question about how to find the transition for datetime data. I have a time series data and I want to detect the start transition and end transition. I use this following code:
changingdate = rainanalysis{:,'DatumUhrzeit'} >= 1 ;
% use false as logical vector to determine transition. With function diff,
% transitions from false (0) to true (1) will be 1 and transitions from true
% to false will be -1. This will be 1 at the start of a dry period and -1 after the end
datetransitions = diff([false; changingdate; false]);
datestarts = find(datetransitions == 1);
dateends = find(datetransitions == -1) -1;
However I got an error "Comparison is not defined between datetime and double arrays." I attach also the time series table and the picture contain error message here. Thank you for your help.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 18 Nov. 2017
changingdate = diff(rainanalysis{:,'DatumUhrzeit'}) >= 1 ;
  6 Kommentare
Kasih Ditaningtyas Sari Pratiwi
Thank you Walter!
Peter Perkins
Peter Perkins am 20 Nov. 2017
Walter's solutions are correct, but I might suggest substituting caldays(1) for 1, for readability.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by