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

14 visualizaciones (últimos 30 días)
Iris Li
Iris Li el 11 de Mayo de 2018
Comentada: Iris Li el 12 de Mayo de 2018
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]

Respuesta aceptada

Guillaume
Guillaume el 11 de Mayo de 2018
Editada: Guillaume el 11 de Mayo de 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 comentarios
Guillaume
Guillaume el 12 de Mayo de 2018
It's all documented in the link I provided, you can provide the keys with the Keys, LeftKeys, or RightKeys optional arguments.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre RF Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by