How to find the transition for datetime data?
2 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
Walter Roberson
2017-11-18
changingdate = diff(rainanalysis{:,'DatumUhrzeit'}) >= 1 ;
6 个评论
Peter Perkins
2017-11-20
Walter's solutions are correct, but I might suggest substituting caldays(1) for 1, for readability.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calendar 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!