Azzera filtri
Azzera filtri

Find the indeces of common elements of

16 visualizzazioni (ultimi 30 giorni)
pietro
pietro il 2 Nov 2015
Commentato: pietro il 5 Nov 2015
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

Risposta accettata

Stephen23
Stephen23 il 2 Nov 2015
Modificato: Stephen23 il 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

Più risposte (0)

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by