time difference(milliseconds) at midnight error!
3 次查看(过去 30 天)
显示 更早的评论
Hello,
I am calcualting the time diffrence beetwen a set of values (duration) , it`s working but calculating t.d. at midnight gives me wrong answer:
for i=6:100
disp(milliseconds(td(i) - td(i-5)) - 20000);
end
I have the -20000 bc I always have a 20 seconds delay , I am only interested in the ms without the 20 s
example of my td :
....
'23:59:55'
'23:59:56'
'23:59:56'
'00:00:16'
'00:00:16'
'00:00:17'
'00:00:17'
'00:00:17'
'00:00:37'
'00:00:37'
....
and the output is :
748
748
748
-86399252
-86399236
-86399252
-86399252
-86399252
748
732
until midnight all the values are correct , I calculated them myself,.
how can I solve the problem for the midnight time diff?
*I am using matlab R2017b
1 个评论
Walter Roberson
2018-11-20
if those are duration objects that are all less than 24 hours then the output would appear to be correct.
采纳的回答
Walter Roberson
2018-11-21
编辑:Walter Roberson
2018-11-21
ntd = td(:)+cumsum([0;diff(td(:))<0])*days(1);
Now apply your code to ntd .
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!