I have a vector of date times in 'HH:MM:SS' format which I want to convert to elapsed time. Each cell is a 1 minute increment from the previous.
Right now I'm doing a for loop that loops the size of the entire vector, and does x(i)-x(1) to calculate the elapsed time (in minutes).
This seems kind of cumbersome code, and I feel like there's an easier way. Any recommendations?

 채택된 답변

Thomas
Thomas 2012년 4월 25일

1 개 추천

your cell array
c={'12:00:00' '12:00:01' '12:00:02' '12:00:03'}
d=datenum(c,'HH:MM:SS')
out=d-d(1);
time_sec=out*86400

추가 답변 (1개)

Walter Roberson
Walter Roberson 2012년 4월 25일

0 개 추천

datenum() the cell array of date strings to get out a vector of serial date numbers. Subtract the first value from the array to get the elapsed times in days. Multiply by 24*60 to get elapsed times in minutes. No loop should be needed.

카테고리

도움말 센터File Exchange에서 Dates and Time에 대해 자세히 알아보기

태그

질문:

2012년 4월 25일

댓글:

2023년 11월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by