Return a logical matrix tf with the same shape as a which is true (1) if the element in a is found in s and false (0) if it is not.
If a second output argument is requested then the index into s of each matching element is also returned.
a = [3, 10, 1];
s = [0:9];
[tf, s_idx] = ismember (a, s)
⇒ tf = [1, 0, 1]
⇒ s_idx = [4, 0, 2]
The inputs a and s may also be cell arrays.
a = {"abc"};
s = {"abc", "def"};
[tf, s_idx] = ismember (a, s)
⇒ tf = [1, 0]
⇒ s_idx = [1, 0]
If the optional third argument "rows" is given then compare rows
in a with rows in s. The inputs must be 2-D matrices with the
same number of columns to use this option.
a = [1:3; 5:7; 4:6];
s = [0:2; 1:3; 2:4; 3:5; 4:6];
[tf, s_idx] = ismember (a, s, "rows")
⇒ tf = logical ([1; 0; 1])
⇒ s_idx = [2; 0; 5];
See also: lookup, unique, union, intersect, setdiff, setxor.
Package: octave