t = hours(16) + minutes(meas_SPL_all(:, 2)); t.Format = 'hh:mm';
How to convert a minutes elapsed vector to time (hh:mm)?
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Antonio Taveira
am 7 Aug. 2021
Beantwortet: Peter Perkins
am 9 Aug. 2021
Hi,
On a continous 24 hour measurement, I have a vector of time elapsed in minutes since the beginning (0 to 1440). I know that the starting time of the measurement is 16:00. How to create a time vector (hh:mm) for each sample? The purpose is to add the time on the x axis of a plot.
My best try is using a loop that goes through each sample, with h (hour) starting at 16 and rounds the minutes. The issue is it must detect every hour change.
Looking forward for some help :)
for i=1:length(meas_SPL_all)
meas_SPL_all(:,3) = {h:round(meas_SPL_all(i,2))}
if round(meas_SPL_all(i,2) > 60
h = h + 1
end
0 Kommentare
Akzeptierte Antwort
Weitere Antworten (1)
Peter Perkins
am 9 Aug. 2021
"continous 24 hour measurement" sounds like you are dealing with time of day. If you add 600 minutes to hours(16), you will get
>> hours(16) + minutes(600)
ans =
duration
26 hr
which may not be what you want. If you want this to wrap to 04:00, add to an absolute time.
>> datetime(2021,8,9,16,0,0) + minutes(600)
ans =
datetime
10-Aug-2021 02:00:00
0 Kommentare
Siehe auch
Kategorien
Mehr zu Spectral Measurements 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!