I want annual data from monthly data (sum of every 12 months)
2 次查看(过去 30 天)
显示 更早的评论
Hey all,
I have a 1 x3 cell which contains 3 tables (360x3). In each table, there is a "dates" column (MM/DD/YYYY) and precipitation value (rrr24) column. The dates are for 30 years, monthly. Please help me to have another 1 x3 cell (newcell) which contains 30x3 tables with the amount of precipitation for each year instead of the month. I would like to use the sum function to convert monthly precipitation to annual.
I attached my cell.
Thank you so much.
0 个评论
采纳的回答
Peng Li
2020-3-30
Hi, you again lol and me again
I thought it would be easier for you to solve this with my previous answer regarding the season stuff.
newCell = cellfun(@cusFun, CELL, 'UniformOutput', 0);
function cusTbl = cusFun(tbl)
tbl.year = year(tbl.dates);
[grp, cusTbl] = findgroups(tbl(:, 'year'));
cusTbl.sum_rrr24 = splitapply(@sum, tbl.rrr24, grp);
cusTbl.grid_name = splitapply(@(x) x(1), tbl.(1), grp);
end
2 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!