Find the indeces of common elements of

13 views (last 30 days)
Hi all,
I have two vectors and I need to find the index of the common elements between the two vectors, but the position of the indeces should be like the first array.
Here an example:
a=[7 10 33];
b=[33 7];
result=[3,1];
I would use setdiff like [C,ia] = setdiff(A,B,'stable'), but C has the same order of array A and I cannot swap A with B. In my case all the elements of B are always included in A.
Thank you
Regards
Pietro

Accepted Answer

Stephen23
Stephen23 on 2 Nov 2015
Edited: Stephen23 on 2 Nov 2015
You can use bsxfun quite effectively for this:
>> a = [7,10,33];
>> b = [33,7];
>> [R,~] = find(bsxfun(@eq,a(:),b))
R =
3
1

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!