To add two datetime arrays , with millisecond values
조회 수: 46 (최근 30일)
이전 댓글 표시
I have a datetime array a=[ 09:39:12.000, 09:39:12.000] and another datetime array with b= [ 0:00:00.001, 0:00:00.002]
I want answer as [09:39:12.001, 09:39:12.002]. FIrst value of a added to first value of b, and so on.
It is showing 'Addition is not defined between datetime arrays'. Is there any way to add the hh:mm:ss of first array to .SSS of second array
Is there any way to add the 2 datetime arrays? Please help.
댓글 수: 0
채택된 답변
Stephen23
2021년 11월 7일
편집: Stephen23
2021년 11월 7일
You should be storing those times as duration objects (not as datetime objects) so you could simply add them. The solution to your task is to convert them to duration objects, which can be simply added together:
a = datetime(0,0,0,[9;9],[39;39],[12;12],'Format','HH:mm:ss.SSS') % better as DURATION
b = datetime(0,0,0,0,0,[0.001;0.002],'Format','HH:mm:ss.SSS') % better as DURATION
c = timeofday(a)+timeofday(b);
c.Format = 'hh:mm:ss.SSS'
추가 답변 (1개)
Steven Lord
2021년 11월 7일
You cannot add two datetime arrays as the error message indicates. If addition of datetime arrays was defined, what would be the value of (tomorrow + next Tuesday)?
You can add two duration arrays (as Stephen shows) or a duration and a datetime.
x = minutes(45);
y = minutes(30);
n = datetime('now')
z = x+y % 75 minutes
w = n + y % half an hour from now
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!