intersect — returns the vector of common values of two vectors
[v [,ka,kb]]=intersect(a,b)
[v [,ka,kb]]=intersect(a,b,orient)
vector of numbers or strings
vector of numbers or strings
flag with possible values : 1 or "r", 2 or "c"
row vector of numbers or strings
row vector of integers
row vector of integers
intersect(a,b) returns a sorted row vector of
common values of two vectors of a and
b.
[v,ka,kb]=intersect(a,b) also returns index
vectors ka and kb such that
v=a(ka) and v=b(kb).
intersect(a,b,"r") or
intersect(a,b,1)returns the matrix formed by the
intersection of the unique rows of a and
b sorted in lexicographic ascending order. In this case
matrices a and b must have the same
number of columns.
[v,ka,kb]=intersect(a,b,"r") also returns index
vectors ka and kb such that
v=a(ka,:) and v=b(kb,:).
intersect(a,b,"c") or
intersect(a,b,2)returns the matrix formed by the
intersection of the unique columns of a and
b sorted in lexicographic ascending order. In this case
matrices a and b must have the same
number of rows.
[v,ka,kb]=intersect(a,b,"c") also returns index
vectors ka and kb such that
v=a(:,ka) and v=b(:,kb).
NaN are considered as different from themselves so they are excluded out of intersection in case of vector intersection.
A=round(5*rand(10,1));
B=round(5*rand(7,1));
intersect(A,B)
[N,ka,kb]=intersect(A,B)
intersect('a'+string(A),'a'+string(B))
intersect(int16(A),int16(B))
//with matrices
A = [0,0,1,1 1;
0,1,1,1,1;
2,0,1,1,1;
0,2,2,2,2;
2,0,1,1,1;
0,0,1,1,%nan];
B = [1,0,1;
1,0,2;
1,2,3;
2,0,4;
1,2,5;
%nan,0,6];
[v,ka,kb] = intersect(A,B,'c')
A(:,ka)