フィルターのクリア

Time between two dates

61 ビュー (過去 30 日間)
Miguel Herrera
Miguel Herrera 2018 年 4 月 18 日
回答済み: Steven Brossi 2022 年 8 月 8 日
Lets say I have a time T1 = '2018-03-14 16:30:54' and another T2 = '2018-03-14 16:40:54' How can I find the total duration of the interval, as well as a "midpoint" in between said interval? My goal is to add an NaN entry every time there is a time gap greater than 10 minutes.
For example; '2018-03-14 16:30:54' '2018-03-14 16:40:54' %NaN entry would be added here '2018-03-14 17:20:15' '2018-03-14 17:30:15'
The purpose of adding this entry would be to remove discontinuity in graphs.

採用された回答

the cyclist
the cyclist 2018 年 4 月 18 日
編集済み: the cyclist 2018 年 4 月 18 日
T1 = datetime('2018-03-14 16:30:54');
T2 = datetime('2018-03-14 16:40:54');
dT = T2 - T1;
T_mid = T1 + dT/2;
  3 件のコメント
the cyclist
the cyclist 2018 年 4 月 19 日
編集済み: the cyclist 2018 年 4 月 19 日
There might be a better way, but ...
dT > duration('12:00','InputFormat','mm:ss')
Peter Perkins
Peter Perkins 2018 年 4 月 19 日
dT > hours(12)
The cyclists code will work in R2018a or later, but in any case using hours seems much more readable to me.

サインインしてコメントする。

その他の回答 (2 件)

Peter Perkins
Peter Perkins 2018 年 4 月 19 日
>> d = datetime(2018,3,14,16,[30 40],54)
d = 
  1×2 datetime array
   14-Mar-2018 16:30:54   14-Mar-2018 16:40:54
>> mean(d)
ans = 
  datetime
   14-Mar-2018 16:35:54
>> diff(d)
ans = 
  duration
   00:10:00

Steven Brossi
Steven Brossi 2022 年 8 月 8 日
How about
T1 = datetime('2018-03-14 16:30:54')
T1 = datetime
14-Mar-2018 16:30:54
T2 = datetime('2018-03-14 16:40:54')
T2 = datetime
14-Mar-2018 16:40:54
T_mid = mean([T1, T2])
T_mid = datetime
14-Mar-2018 16:35:54

カテゴリ

Help Center および File ExchangeDates and Time についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by