Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.1.0 - Português


union

extrai componentes da união de um vetor

Seqüência de Chamamento

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

Parâmetros

a, b
matrizes de booleanos, números ou texto. Matrizes booleanas ou numéricas esparsas são aceitos. Os tipos de a et de b podem ser distintos, mas compatíveis para concatenação.

orient
orientação do processamento :
  • 1 ou "r": a união é realizada nas linhas.
  • 2 or "c": a união é realizada nas colunas.

v
vetor linha, ou matriz. O tipo de dados de v é o tipo de resultado [a(:) ; b(:)].

ka
vetor linha de inteiros: Índices em a de elementos / linhas / colunas de v vindos de a.

kb
vetor linha de inteiros: Índices em b dos elementos / linhas / colunas restantes de v vindos de b.

Descrição

union(a,b) retorna um vetor linha ordenado que retém as entradas únicas de [a(:);b(:)].

union(a,b,"r") ou union(a,b,1)retorna a matriz formada pela união das linhas únicas de a e b em ordem lexicográfica ascendente. Neste caso, as matrizes a e b devem ter o mesmo número de colunas.

union(a,b,"c") ou union(a,b,2)retorna a matriz formada pela união das colunas únicas de a e b em ordem lexicográfica ascendente. Neste caso, as matrizes a e b devem ter o mesmo número de colunas.

[v,ka,kb]=union(a,b) também retorna vetores de índices ka e kb tais que v é uma combinação ordenada das entradas a(ka) e b(kb).

Exemplos

A = [6  7  6 ; 5  8  3 ];
B = [1  7  1  0  6 ];

union(A, B)
[u, ka, kb] = union(A, B)
--> union(A, B)
 ans  =
   0.   1.   3.   5.   6.   7.   8.

--> [u, ka, kb] = union(A, B)
 u  =
   0.   1.   3.   5.   6.   7.   8.
 ka  =
   6.   2.   1.   3.   4.
 kb  =
   4.   1.

A = ["a" "b" "a" "c" "c" "b"
     "b" "c" "a" "b" "c" "c" ];
B = ["b" "a" "c" "c" "b" "a"
     "a" "c" "b" "b" "b" "b" ];

[U, ka, kb] = union(A, B, "c")
--> [U, ka, kb] = union(A, B, "c")
 U  =
  "a"  "a"  "a"  "b"  "b"  "b"  "c"  "c"
  "a"  "b"  "c"  "a"  "b"  "c"  "b"  "c"

 ka  =
   3.   1.   2.   4.   5.

 kb  =
   2.   1.   5.

[F, T] = (%f, %t);
A = sparse([T T F T F T ; F F F F T T ; T F F F F T ]); full(A)
B = sparse([F F T T F F ; T T T T T T ; T F T T T F ]); full(B)

[U, ka, kb] = union(A, B, "c");
issparse(U)
full(U), ka, kb
--> A = sparse([T T F T F T ; F F F F T T ; T F F F F T ]); full(A)
 ans  =
  T T F T F T
  F F F F T T
  T F F F F T

--> B = sparse([F F T T F F ; T T T T T T ; T F T T T F ]); full(B)
 ans  =
  F F T T F F
  T T T T T T
  T F T T T F

--> [U, ka, kb] = union(A, B, "c");
--> issparse(U)
 ans  =
  T

--> full(U), ka, kb
 ans  =
  F F F T T T
  F T T F F T
  F F T F T T

 ka  =
   3.   5.   2.   1.   6.
 kb  =
   1.

Ver Também

  • brackets — Concatenation. Recipients of an assignment. Results of a function
  • unique — remover todos os componentes duplicados de um vetor ou uma matriz

Histórico

VersãoDescrição
6.1.0 Extension to boolean matrices.
6.1.1 Extension to sparse boolean, sparse real, and sparse complex matrices.
Report an issue
<< setdiff Set operations unique >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon May 22 12:42:12 CEST 2023