find few elements in vector

2 views (last 30 days)
Kerim Khemraev
Kerim Khemraev on 15 Nov 2016
Commented: Kerim Khemraev on 16 Nov 2016
Hi!
Let's assume that I have a vector y=[3 5 6 7 9] and x=[5 9] How can I get the indices of elements in 'y' that are equal to 'x' without using cycle? I mean if I had x=5 ('x' is a scalar) I would write something like y==x or find(y==x) but 'x' is a vector. Thank you in advance

Accepted Answer

Geoff Hayes
Geoff Hayes on 15 Nov 2016
Kerim - try using ismember or intersect to find those elements that are common to both arrays.

More Answers (2)

Roger Stafford
Roger Stafford on 15 Nov 2016
[~,ia] = intersect(y,x);
ia contains indices with respect to y of elements that lie both in y and in x.

Kerim Khemraev
Kerim Khemraev on 16 Nov 2016
Geoff Hayes, Roger Stafford Thank you a lot! intersect function solves my problem

Categories

Find more on Creating and Concatenating 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!