How can I convert a time vector of HH:SS to a decimal?

15 views (last 30 days)
I have a vector of time in format HH:SS in a table and I want to convert it to a decimal number.
For example:
03:30 = 3.5
04:45 = 4.75
How can I do that?
Thanks.

Accepted Answer

Steven Lord
Steven Lord on 30 Aug 2021
If you have them stored as a duration array just use the hours function.
du = duration({'03:30', '04:45'}, 'InputFormat', 'hh:mm')
du = 1×2 duration array
03:30:00 04:45:00
hours(du)
ans = 1×2
3.5000 4.7500

More Answers (1)

Jan
Jan on 30 Aug 2021
v = datetime({'03:30', '04:45'}, 'InputFormat', 'HH:mm')
v = 1×2 datetime array
30-Aug-2021 03:30:00 30-Aug-2021 04:45:00
hour(v) + minute(v) / 60
ans = 1×2
3.5000 4.7500

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!