I would like to get an cell array output by matching 2 cell arrays and returning with corresponding matched values from other cell array.
1 view (last 30 days)
Show older comments
velmurugan
on 13 Jul 2018
Commented: velmurugan
on 16 Jul 2018
I have 2 cell arrays A(6*1) and B(35*2).
A= {'MEG0522';'MEG0523';'MEG0512';'MEG0513';'MEG0312';'MEG0313'};
B= {'MEG0522','LF';'MEG0523','LF';'MEG0512','LF';'MEG0513','LF';'MEG0312','LF';'MEG0313','LF';'MEG0342','LF';'MEG0343','LF';'MEG0122','LF';'MEG0123','LF';'MEG0822','LF';'MEG0823','LF';'MEG0533','LF';'MEG0532','LF';'MEG0543','LF';'MEG0542','LF'{'MEG0923','RF';'MEG1212','RF';'MEG1213','RF';'MEG1223','RF';'MEG1222','RF';'MEG1412','RF';'MEG1413','RF';'MEG0943','RF';'MEG0942','RF';'MEG0933','RF';'MEG0932','RF';'MEG1232','RF';'MEG1233','RF'};
I would like to get an output by matching A with B, returning a cell array say C(6*2) with A values in the column 1 and corresponding B values in column 2.
C = {'MEG0522','LF';'MEG0523','LF';'MEG0512','LF';'MEG0513','LF';'MEG0312','LF'};
Values will not be in an orderly fashion. I would appreciate any support from community members.
Accepted Answer
Carlos Felipe Rengifo
on 14 Jul 2018
Please, let me know if the following sentence solves your problem:
B(ismember(B(:,1),A),:)
4 Comments
See Also
Categories
Find more on Loops and Conditional Statements 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!