merging two datasets based on two identical rows in each data set

2 views (last 30 days)
Hi,
I am looking to compare two datasets and rearrange their values:
array A:
A=[1 150 234,
1 151 234,
3 151 180,
5 152 345,
4 160 674]; % i should compare in the same time column A(:,2) and A(:,3) with B(:,1) and B(:,2)
B=[151 234 10,
152 345 11,
160 674 10
151 180 1,
150 234 5];
% Result should be:
C=A=[1 150 234 5,
1 151 234 10,
3 151 180 1,
5 152 345 11,
4 160 674 10];
I tried to use ismember but it takes into account only one column of each dataset. I would like to search two identical columns in set B and then merge all data in C as showed in example.
Thanks a lot!

Accepted Answer

JESUS DAVID ARIZA ROYETH
JESUS DAVID ARIZA ROYETH on 27 Nov 2019
solution:
[~,n]=ismember(A(:,2:3),B(:,1:2),'rows')
C=[A B(n,end)]

More Answers (0)

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!