Synchronize timetables stored in a structure
2 views (last 30 days)
Show older comments
Giovanni Barbarossa
on 30 Jul 2023
Commented: Giovanni Barbarossa
on 31 Jul 2023
I have a structure S with N fields F_1 to F_N. Each field stores a timetable T_1 to T_N, respectively. How do I synchronize the timetables and keep them in the same structure?
4 Comments
Walter Roberson
on 30 Jul 2023
I am not currently convince that you want to synchronize().
I suspect that what you want to do is to retime() all of them to the same timestamps (the ones available for T_1)
Accepted Answer
Walter Roberson
on 30 Jul 2023
One possible interpretation of your question:
Sc = struct2cell(S);
joint = sortrows(vertcat(Sc{:}));
synchronized = structfun(@(F) synchronize(F, joint, 'union'), S, 'uniform', 0);
This (tries to) synchronize each of the timetables against all of the other ones, by combining all of them together into one and synchronizing against that.
2 Comments
Walter Roberson
on 31 Jul 2023
NT1 = S.T_1.Properties.RowTimes;
Retimed = structfun(@(F) retime(F, NT1, 'linear', 'EndValues', 'linear'), S, 'uniform', 0);
More Answers (0)
See Also
Categories
Find more on Timetables 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!