How can I add multiple 1 x 1 strings to all rows in a table?
1 view (last 30 days)
Show older comments
Benjamin Horsley
on 5 Mar 2021
Answered: Walter Roberson
on 5 Mar 2021
Here is a mock table.
% Mock table.
headers = {'A' 'B' 'C' 'D' 'E'};
data = cell(4,5);
T = cell2table(data);
T.Properties.VariableNames = headers;
I am trying to add four new columns at the beginning of T where each column contains the respective workspace variable across all rows.
par = "p00";
type = "Pilot";
trial_no = 1;
vel = "Moderate";
I'm a bit stuck on how to do this, so will appreciate any help.
Thank you.
0 Comments
Accepted Answer
Walter Roberson
on 5 Mar 2021
You can use 'Before' and 'after' to add the variables into a particular location in the table.
Note: you will need to supply values for all of the rows at the time you add the variables.
Much of the time it is easier to do something like
T.par = appropriate values
T.type = appropriate values
T.trial_no = appropriate values
T.vel = appropriate values
T = T(:,{'par', 'type', 'trial_no', 'vel', headers{:}});
which is to say, add the variables one by one, and then afterwards re-order the variables to the final order.
0 Comments
More Answers (0)
See Also
Categories
Find more on Database Toolbox 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!