# intersect

returns the vector of common values of two vectors

## Seqüência de Chamamento

                [v [,ka,kb]]=intersect(a,b)
                [v [,ka,kb]]=intersect(a,b,orient)

## Parâmetros

a

  vetor de números ou strings

b

  vetor de números ou strings

orient

  flag com possíveis valores : 1 ou "r", 2 ou "c"

v

  vetor linha de números ou strings

ka

  vetor linha de inteiros

kb

  vetor linha de inteiros

## Descrição

`intersect(a,b)` retorna um vetor-linha ordenado dos valores comuns a dois vetores `a` e `b`.

`[v,ka,kb]=intersect(a,b)` retorna também dois vetores de índices `ka` e `kb` tais que `v=a(ka)` e `v=b(kb)`.

`intersect(a,b,"r")` ou `intersect(a,b,1)`retorna a matriz formada interseção das linhas únicas de `a` e `b` ordenadas em ordem lexicográfica ascendente. Neste caso, `a` e `b` devem ter o mesmo número de colunas.

`[v,ka,kb]=intersect(a,b,"r")` retorna também dois vetores de índices `ka` e `kb` tais que `v=a(ka,:)` e `v=b(kb,:)`.

`intersect(a,b,"c")` ou `intersect(a,b,2)`retorna a matriz formada interseção das colunas únicas de `a` e `b` ordenadas em ordem lexicográfica ascendente. Neste caso, `a` e `b` devem ter o mesmo número de linhas.

`[v,ka,kb]=intersect(a,b,"c")` retorna também dois vetores de índices `ka` e `kb` tais que `v=a(:,ka)` e `v=b(:,kb)`.

## Observação

NaN são considerados diferentes deles mesmos , então são excluídos da interseção em caso de interseção de vetores.

## Exemplos

    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))

    //com matrizes
     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)

## Ver Também

- unique
- gsort
- union