how to find the hourly average of datetime series

10 views (last 30 days)
Hello everyone. I have a datetime series of this form for about 1 month
Dates =datetime(Dates,'InputFormat','dd-MM-yyyy HH:mm:ss')
The variables in the table
Data.Dates
Data.Records1
Data.Records2
I have data for a month at 3 mins intervals.
I visualized plots for the whole time series but I am having troubles visualizing daily averages. 12 to 12 or something like that.
Is it possible to make daily average in hours from this time series into another table with 3 variables?
Thanks in advance

Accepted Answer

Scott MacKenzie
Scott MacKenzie on 28 Jul 2021
Edited: Scott MacKenzie on 28 Jul 2021
TT1 = table2timetable(Data);
TT2 = retime(TT1, 'hourly', 'mean'); % hourly averages
TT3 = retime(TT1, 'daily', 'mean'); % daily averages
  3 Comments
Scott MacKenzie
Scott MacKenzie on 29 Jul 2021
@Daniel Abraham You state: I was actually looking for was to see the hourly averages for all hours
That's exactly what this line does:
TT2 = retime(TT1, 'hourly', 'mean');
Of course, the line is terminated with a semicolon, so nothing is actually "seen".
You also state: and daily averages for each day of the week of the datetime series
And that's what the following line does:
TT3 = retime(TT1, 'daily', 'mean');
In your example, you include the name of the weekday. If you want to add the weekday name, then add the following:
[~, name] = weekday(TT3.Var1, 'long');
TT3.Weekday = cellstr(name);
If this isn't what you are looking for, please explain further.
Also, it would help if you post your data.

Sign in to comment.

More Answers (0)

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!