How to convert irregular daily data to annual data?
9 次查看（过去 30 天）
I have a dataset (excel file attached - pcr.xlsx) of daily data values. The values are expressed as "Tonnes". I wanted to convert these to annual data from 1959 till date. My issue is that the daily data are irregular i.e. each year does not contain 365/366 values, so I am confused on how to directly get the answer (if each year had constant number of data points - 365, I think it would be easier).
I did try the "convert2annual" function but had no luck with it. I would appreciate some help in this regard. Thank you!
T = readtable("https://www.mathworks.com/matlabcentral/answers/uploaded_files/1101770/pcr.xlsx");
T(T.Tonnes == 0, :) =; % remove rows where Tonnes == 0
T1 = timetable(datetime(T.Dates, "InputFormat", 'dd-MM-yyyy'), T.Tonnes);
T1.Properties.VariableNames = "Tonnes";
T2 = retime(T1, 'yearly', 'mean')