Compare two tables and extract data

Hello, I have two data matrix: A and B
A =
101 62
102 65
103 62
104 58
105 72
106 80
B =
99 65
100 62
102 80
104 71
105 73
109 62
I would like to search all same values in first column of A and B, and create a column C with all the extracted rows from A and B :
C =
102 65 80
104 58 71
105 72 73
Any help is very much appreciated!

1 Commento

C = B(ismember(B(:,1),A),:)
I know that with this code, I can only return B, but I also need the second column of A.
I thought about indices?

Accedi per commentare.

 Risposta accettata

Ameer Hamza
Ameer Hamza il 12 Ott 2020
Modificato: Ameer Hamza il 12 Ott 2020
Try this
A = [
101 62
102 65
103 62
104 58
105 72
106 80];
B = [
99 65
100 62
102 80
104 71
105 73
109 62];
[idxA, idxB] = ismember(A(:,1), B(:,1));
C = [A(idxA, :) B(idxB(idxB~=0), 2)];

4 Commenti

MELO
MELO il 12 Ott 2020
Thank you very much, it worked perfectly ^^
I am glad to be of help!!!
MELO
MELO il 13 Ott 2020
you'are so nice. I love it!
My pleasure! You may accept the answer to show appreciation.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by