union
Ensemble de tous les éléments, lignes ou colonnes de deux matrices, sans doublons
Séquence d'appel
[v, ka, kb] = union(a, b) [v, ka, kb] = union(a, b, orient)
Paramètres
- a, b
- tableaux de booléens, de nombres, ou de texte. Matrices creuses booléennes
ou numériques acceptées. Les types de
a
et deb
peuvent être distincts mais compatibles pour la concaténation. - orient Orientation du traitement :
- 1 or "r": union des lignes de
a
et deb
. - 2 or "c": union des colonnes de
a
et deb
.
- 1 or "r": union des lignes de
- v
- vecteur ligne, ou matrice. Le type de
v
est celui de[a(:) ; b(:)]
. - ka
- vecteur ligne d'entiers : rangs dans
a
des éléments/lignes/colonnes dev
présents dansa
. - kb
- vecteur ligne d'entiers : rangs dans
b
des éléments/lignes/colonnes dev
restants issus deb
.
Description
union(a,b)
renvoie un vecteur ligne contenant les
valeurs distinctes (classées par ordre croissant) contenues dans les
éléments de [a(:);b(:)]
.
union(a,b,"r")
ou
union(a,b,1)
renvoie la matrice formée de l'union des
lignes distinctes de a
et b
triées
dans l'ordre lexicographique croissant. Dans ce cas les matrices
a
et b
doivent avoir le même nombre
de colonnes.
union(a,b,"c")
ou
union(a,b,2)
renvoie la matrice formée de l'union des
colonnes distinctes de a
et b
triées
dans l'ordre lexicographique croissant. Dans ce cas les matrices
a
et b
doivent avoir le même nombre
de lignes.
[v,ka,kb]=union(a,b)
renvoie aussi les vecteurs
d'indices ka
et kb
tels que
v
est une combinaison triée des termes de
a(ka)
et b(kb)
.
Exemples
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.
Voir aussi
Historique
Version | Description |
6.1.0 | Extension aux matrices booléennes. |
6.1.1 | Extension aux matrices creuses booléennes, réelles, ou complexes. |
Report an issue | ||
<< setdiff | Ensembles | unique >> |