Azzera filtri
Azzera filtri

How to merge two tables when the key variables are not common?

29 visualizzazioni (ultimi 30 giorni)
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]

Risposta accettata

Guillaume
Guillaume il 11 Mag 2018
Modificato: Guillaume il 11 Mag 2018
This is called an outerjoin:
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 Commenti
Guillaume
Guillaume il 12 Mag 2018
It's all documented in the link I provided, you can provide the keys with the Keys, LeftKeys, or RightKeys optional arguments.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Tables in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by