monts in year sequence, string, matrix
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Nikola Ostojic
le 16 Jan 2021
Commenté : Nikola Ostojic
le 16 Jan 2021
I have a series of 365 days. I need to divide the elements of the array into months with 31, 28, 31, 30 .. days and add the values for the months.
The result should be a series of 12 months with aggregated values for each month.
can i have a reshape function?
0 commentaires
Réponse acceptée
Walter Roberson
le 16 Jan 2021
Convert to a timeseries() object and use retime()
Or:
Data = rand(365,1);
Data_timestamp = datetime(2021, 1, 1:365).'; %use non-leap year !
month_totals = accumarray(month(Data_timestamp), Data)
Plus de réponses (1)
dpb
le 16 Jan 2021
Add the date to a timetable and retime with aggregation--
tt=timetable(datetime(yr,1,1:365).',data); % make timetable of days and your data
ttAgg=retime(tt,'monthly','sum');
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!