Time conversion question
1 view (last 30 days)
Show older comments
I have several days of data that I am analyzing. There is a time stamp of the form '(DDD)HH:MM:SS.SSSSSS' day, hours, min, sec. Is there an easy of converting this vector to just hours? The date is from the system time of the PC, I just want to plot keep track of a total delta time from the beginning of the data collection to the end. help.
0 Comments
Answers (2)
Andreas Goser
on 28 Jan 2011
Usually, I would prefer the DATEVEC function, but as far as I see, this is not working here, as no month information is given. A very powerful approach is then REGEXP (or FINDSTR, etc.). All in all, with this easy format, the easiest approach is:
dt = datestr(now, '(DDD)HH:MM:SS.FFF')
str2num(dt(6:7))
0 Comments
Sebastian
on 28 Jan 2011
I would use the datenum() function to convert your time stamps to a serial date (see "doc datenum" for details). Then I would subtract the minimun of that vector and finally multiply by 24. This would give you the time in hours since the measurement start.
% generate some test data, in your case d would
% be created using the datenum function
d = sort(now+rand(10,1)*2);
d_hours = (d-min(d))*24;
% display for verification
disp([datestr(d) repmat(' -> ',10,1) num2str(d_hours)])
0 Comments
See Also
Categories
Find more on Dates and Time 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!