MATLAB: Compare 2 arrays with find()

arrayfind

I have 2 arrays:
x = 1:1:3;
Points = [1 3 2 1 1 3 4];
I would like to use find() function comparing each element of 'Points' array with full 'x' array.
It would be similar to do:
find(Points(1) == x)
find(Points(2) == x)
… one by one, but I would like to do it at once without looping. However I get error if I do:
find(Points == x)

Best Answer

The ismember function may do what you want:
x = 1:1:3;
Points = [1 3 2 1 1 3 4];
[~,Out] = ismember(Points, x)
producing:
Out =
1 3 2 1 1 3 0
Experiment with it to get the result you want.