how to floor time for each hour?
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Lilya
am 15 Mär. 2022
Kommentiert: Lilya
am 17 Mär. 2022
Hi Experts,
I have this time format, and i want to have the time only for each hour. Could anyone please help with this?
'12-Dec-2021 09:09:04'
'12-Dec-2021 09:24:04'
'12-Dec-2021 09:39:04'
'12-Dec-2021 09:54:04'
Much appreciated
2 Kommentare
Akzeptierte Antwort
Star Strider
am 15 Mär. 2022
Try this —
tv = {'12-Dec-2021 09:09:04'
'12-Dec-2021 09:24:04'
'12-Dec-2021 09:39:04'
'12-Dec-2021 09:54:04'};
dtv = datetime(tv, 'Format','dd-MMM-yyyy HH') % Display Only The Hour
dtv = datetime(tv, 'Format','dd-MMM-yyyy HH:00:00') % Display Hour, Set Rest To Zeros
.
3 Kommentare
Star Strider
am 16 Mär. 2022
Bearbeitet: Star Strider
am 16 Mär. 2022
As always, my pleasure!
EDIT — (16 Mar 2022 at 12:40)
.
Weitere Antworten (2)
Steven Lord
am 15 Mär. 2022
If you want to actually modify the data rather than just changing how the data is displayed you can use dateshift.
tv = {'12-Dec-2021 09:00:00',
'12-Dec-2021 09:09:04'
'12-Dec-2021 09:24:04'
'12-Dec-2021 09:39:04'
'12-Dec-2021 09:54:04'};
dtv = datetime(tv)
dtv2 = dateshift(dtv, 'start', 'hour')
To check that the data has actually been changed:
dtv2 == dtv(1)
3 Kommentare
Steven Lord
am 16 Mär. 2022
Based on your answer to KSSV's comment "to have the data at each hour instead of having different time steps for each hour" I suspect that storing your data in a timetable array and using retime to retime it to an hourly basis might be a solution to your larger problem.
Arif Hoq
am 15 Mär. 2022
A={'12-Dec-2021 09:09:04'
'12-Dec-2021 09:24:04'
'12-Dec-2021 09:39:04'
'12-Dec-2021 09:54:04'};
B=datetime(A,'Format','hh') % if only hour
B1=datetime(A,'Format','hh:mm:ss') % if hour,min,sec
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!