how i do loop over column?
2 views (last 30 days)
Show older comments
hi all,
I have a matrix with the dim of 978 * 744 which I want to loop over a number of a column with time step equal to 168 (hr/week) to have the final matrices of each week separately with the same number of rows 978
could anyone help me with, please?
thank you in advance.
Accepted Answer
KL
on 15 Dec 2017
Edited: KL
on 15 Dec 2017
If you want to do time-based calculation with your data, for example, weekly average or something I'd highly recommend using timetables (version 16b and above). Even for versions a bit older than that, use tables with datevec and then varfun.
5 Comments
KL
on 15 Dec 2017
Edited: KL
on 15 Dec 2017
@Guillaume: hmm, I kind of thought I might need datevec components to group but yeah, I agree, using proper datetime format is a better approach.
...I decided to 'trim' the data ...
@Lina: Don't do that. You don't have to lose any data. Simply import your data using readtable
data = readtable(filename);
convert it to timetable,
TT = table2timetable(data,'rowtimes',here goes your datetime column)
then use retime,
TT_weekly = retime(TT,'weekly','mean')
More Answers (0)
See Also
Categories
Find more on Data Type Conversion 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!