Add a variable to table

2 views (last 30 days)
Sarah Yun
Sarah Yun on 15 Dec 2019
Commented: Turlough Hughes on 15 Dec 2019
Hi,
I want to join 2 tables together.
In order to do that, table 1 must have the same number of columns as table 2.
table 1 has 8 variables
table 2 has 9 variables
So, I want to add a column to table 8
The variable will be of no use - it will just be a kind of dummy variable
How can I do this?
Thank you.

Answers (1)

Turlough Hughes
Turlough Hughes on 15 Dec 2019
Edited: Turlough Hughes on 15 Dec 2019
Hey Sarah,
Let's say you have two tables, as follows:
T1=table((1:10).',(10:-1:1).');
T2=table((11:20).',(20:-1:11).',(1:10).');
To add a dummy column you could write the following;
T1.dummy=NaN(size(T1,1),1);
To concatenate them, ensure firstly that the VariableNames are the same, which ought to be the case anyway except for T1.dummy:
T1.Properties.VariableNames=T2.Properties.VariableNames;
You can then concatenate the tables as follows:
T=[T1;T2];
Finally, with this approach I assume that the values in the last column of T2 are still important (otherwise you could just write a table without the last column of T1)
T=[T1;T2(:,1:end-1)];
EDIT: following comments below.
  4 Comments
Turlough Hughes
Turlough Hughes on 15 Dec 2019
Edited: Turlough Hughes on 15 Dec 2019
For example if you had:
T1=table((1:10).',(10:-1:1).');
T2=table((11:20).',(20:-1:11).',(1:10).');
You could concatenate them as follows:
T=[T1; T2(:,1:end-1)];
Turlough Hughes
Turlough Hughes on 15 Dec 2019
Did this work for you?

Sign in to comment.

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!