date time convert to elapsed time

21 views (last 30 days)
David C
David C on 25 Apr 2012
Commented: Jamiat Nanteza on 2 Nov 2023
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?

Accepted Answer

Thomas
Thomas on 25 Apr 2012
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

More Answers (1)

Walter Roberson
Walter Roberson on 25 Apr 2012
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.

Categories

Find more on Dates and Time in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!