Clear Filters
Clear Filters

I need help with converting hourly data to daily summation inside a cell

3 views (last 30 days)
Dear all,
I have a cell that contains hourly data of precipitation for the period 1987-2016. I want to convert these hourly data to the daily sum. I tried doing this using timetable and then retime,
daily_precip = cellfun(@(x) table2timetable(x,'RowTime','date'), example, 'uniformoutput', false);
output = retime(daily_precip,'daily','sum');
but I got an error.
Error in @(x)table2timetable(x,'RowTime','date')
So how to convert my hourly data to the daily sum for all the three tables inside the cell?
I attached my cell (namely example).
Thank you

Accepted Answer

Yazan on 15 Aug 2021
Edited: Yazan on 15 Aug 2021
Note that the data type in the column date is char, not datetime. Try the following:
clc, clear
data = cell(size(example));
for ncell=1:length(example)
data{ncell} = timetable(datetime(example{ncell}.date, 'Format', 'dd-MMM-yyyy HH:mm:ss'), example{ncell}.precip);
daily_precip = cellfun(@(x) retime(x, 'daily', 'sum'), data, 'UniformOutput', false);

More Answers (0)


Find more on Tables 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!