Calculate the number of days between two datetimes?
조회 수: 80 (최근 30일)
이전 댓글 표시
How to calculate the number of days between two datetimes?
days(between(day1,day2)) does not work:
"Error using days (line xxx) Input data must be a real, numeric array."
댓글 수: 0
채택된 답변
Brendan Hamm
2016년 11월 10일
You can do:
days(day2-day1)
The issue is that the between function returns a calendarDuration and this is measured using variable time-frames like months and years which contain different numbers of days.
댓글 수: 0
추가 답변 (1개)
Peter Perkins
2016년 11월 15일
between already calculated the difference between those two dates in days:
>> d1 = datetime('yesterday'); d2 = datetime('tomorrow');
>> between(d1,d2)
ans =
calendarDuration
2d
Even more explicitly:
> between(d1,d2,'days')
ans =
calendarDuration
2d
If you then want the number 2, use caldays:
>> caldays(between(d1,d2,'days'))
ans =
2
Hope this helps.
댓글 수: 2
Peter Perkins
2016년 11월 18일
Jussi, I'm not sure what you're saying. All I wanted to demonstrate was that between gives you back a quantity that already measures the number of days. If you need a numeric value, then caldays is the function you want to apply to that, not days.
참고 항목
카테고리
Help Center 및 File Exchange에서 Calendar에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!