Borrar filtros
Borrar filtros

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

29 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 Tables 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