Converting hh:mm:ss into seconds
210 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
tethys
am 20 Jan. 2012
Beantwortet: Steven Lord
am 1 Sep. 2021
Hi all,
I want to read the vectors which are hh:mm:ss (14:35:59.812) format and convert it to seconds. How can I do this in matlab?
Best
0 Kommentare
Akzeptierte Antwort
Andreas Goser
am 20 Jan. 2012
Is this what you are looking for?
t='14:35:59.812';
[Y, M, D, H, MN, S] = datevec(t);
H*3600+MN*60+S
4 Kommentare
per isakson
am 3 Dez. 2016
On R2016a I get the expected result
>> dt = datestr( now,'HH:MM:SS,FFF')
dt =
12:58:26,797
Arshey Dhangekar
am 1 Sep. 2021
I want to convert Time column ( HH:MM:SS) to min, there is a direct command time2num but it requires toolbox and it's paid.So without using time2num how can I convert into minutes. I tried with datetime also but I got error.
table=readtable('sample.csv'):
times = datetime(table.Time,'InputFormat','HH:mm:ss:SSS');
times = hour(times).*60 + minute(times) + second(times)./60;
Weitere Antworten (3)
per isakson
am 20 Jan. 2012
The first and the last cell returns the result I think you are looking for. See help on DATENUM
datenum( '14:35:59.812', 'HH:MM:SS.FFF' ) .* (24*60*60) - ...
datenum( '00:00:00.000', 'HH:MM:SS.FFF' ) .* (24*60*60)
datestr( datenum( '00:00:00.000', 'HH:MM:SS.FFF' ), 'yyyy-mm-dd' )
datenum( '14:35:59.812', 'HH:MM:SS.FFF', 0 ) .* (24*60*60)
Peter Seibold
am 18 Apr. 2021
About 100 times faster is:
t='14:35:59.812';
seconds=sum(sscanf(t,'%f:%f:%f').*[3600;60;1]);
0 Kommentare
Steven Lord
am 1 Sep. 2021
t='14:35:59.812';
F = 'hh:mm:ss.SSS';
du = duration(t, 'InputFormat', F, 'Format', F)
format longg % To make s look nicer
s = seconds(du)
0 Kommentare
Siehe auch
Kategorien
Mehr zu Dates and Time finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!