Add data in a table according to the variable names.

1 view (last 30 days)
I have written a code with a for loop and at the end of each iteration the output is a table with the corresponding variable names, something like this:
head = {'level_RI1','inflow_RI1','outflow_RI1'}
B.Properties.VariableNames = head;
the second iteration output is a table like this:
head = {'level_R2','inflow_R2','outflow_R2'}
B.Properties.VariableNames = head;
at the end I want to merge the results of each iteration in a final table which variable names are:
Result.Properties.VariableNames = {'level_RI1','inflow_RI1','outflow_RI1','level_R2','inflow_R2','outflow_R2'}
But so far I just get the table to overwrite itself at the end of the iterations and the result just contain the final iteration:
Result.Properties.VariableNames = {'level_R2','inflow_R2','outflow_R2'}
I'd appreciate any help :)

Accepted Answer

Peter Perkins
Peter Perkins on 7 Jun 2018
I can't tell if the question is about just the variable names, or the tables themselves. So this may be answering a different question than you asked.
If you have several tables with variable names that don't conflict, just horzcat them:
result = [T1, T2, T3]
Presumably you have many tables, so you can't really hard-code that line. If you store each individual table in a cell array at each iteration of your loop, you can expand that cell array to horzcat them:
for i = ...
myTables{i} = ...
end
result = [myTables{:}];

More Answers (0)

Categories

Find more on Tables in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!