MATLAB: How to add two tables

MATLAB

I have two tables of different number of rows but with same structure. They both have 3 columns, the 3rd column is numbers. How to create a new table which has the common rows on column 1 and column2 and sum on column 3?
Thanks.
Jennifer

Best Answer

Hi Jennifer,
Here's code with sample data that performs your task.
data=magic(3); % sample data
% creating sample tables 1 and 2
table1=array2table(data,'VariableNames',{'key1','key2','values'});
table2=array2table(data,'VariableNames',{'key1','key2','values'});
% joining tables on key1 and key2 only
tablejoin=join(table1,table2,'Keys',{'key1','key2'});
% add value columns together and delete the extra column
tablejoin.values_table1=tablejoin.values_table1+tablejoin.values_table2;
tablejoin.values_table2=[];
Hope this helps.