How to merge two tables when the key variables are not common?
14 views (last 30 days)
Show older comments
I have two tables A and B with key variables. Most variables are the same.
A = [X,Y,K;
100,200,1;
300,400,2;
500,600,3]
B = [P,Q,K;
1000,2000,1;
3000,4000,2;
5000,6000,3;
7000,8000,4]
how could I get
C = [X,Y,K,P,Q;
100,200,1,1000,2000;
300,400,2,3000,4000;
500,600,3,5000,6000;
Nah,Nah,4,7000,8000]
0 Comments
Accepted Answer
Guillaume
on 11 May 2018
Edited: Guillaume
on 11 May 2018
A = array2table([100 200 1; 300 400 2; 500 600 3], 'VariableNames', {'X', 'Y', 'K'});
B = array2table([1000 2000 1; 3000 4000 2; 5000 6000 3; 7000 8000 4], 'VariableNames', {'P', 'Q', 'K'});
C = outerjoin(A, B, 'MergeKeys', true)
Other types of joins are innerjoin and just plain join.
4 Comments
Guillaume
on 12 May 2018
It's all documented in the link I provided, you can provide the keys with the Keys, LeftKeys, or RightKeys optional arguments.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!