Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
unique
extrait (et trie) les éléments distincts d'un vecteur, matrice, hypermatrice
Séquence d'appel
N = unique(M) N = unique(M, orient) [N, k] = unique(..)
Paramètres
- M
vecteur, matrice, ou hypermatrice de nombres ou de textes.
- orient
1 ou "r", 2 ou "c". Ne peut pas être utilisé si
M
est une hypermatrice.- N
- Sans
orient
: vecteur d'éléments deM
triés par ordre croissant. - Avec
orient
: Matrice de lignes ou colonnes extraites deM
, triées par ordre lexicographique croissant.
- Sans
- k
Indices des éléments, lignes ou colonnes extraits, tels que
N(i) = M(k(i))
ouN(i,:) = M(k(i),:)
ouN(:,i) = M(:,k(i))
.
Description
unique(M)
renvoie un vecteur contenant les
valeurs distinctes contenues dans les termes de M
classées par ordre croissant.
unique(M,"r")
ou
unique(M,1)
retourne les lignes uniques de
M
triées dans l'ordre lexicographique croissant.
unique(M,"c")
or
unique(M,2)
retourne les colonnes uniques
M
triées dans l'ordre lexicographique croissant.
Les éléments, lignes ou colonnes extraits peuvent être remis dans leur ordre initial en
triant k . Voir le 1er exemple. |
Exemples
Dédoublonnement de nombres :
M = int8([2 0 2 2 1 1 1 2 1 1 0 1 1 0 1 1 0 1 2 0 1 2 2 0 1 1 2 0 1 0 0 0 ]) [u, k] = unique(M) [uc, kc] = unique(M, "c") // Obtenir les colonnes dédoublonnées dans leur ordre initial : M(:, gsort(kc,"g","i"))
--> M M = 2 0 2 2 1 1 1 2 1 1 0 1 1 0 1 1 0 1 2 0 1 2 2 0 1 1 2 0 1 0 0 0 --> [u, k] = unique(M) u = 0 1 2 k = 2. 4. 1. --> [uc, kc] = unique(M, "c") uc = 0 0 0 1 1 1 2 2 0 1 2 0 1 2 0 2 kc = 14. 2. 11. 12. 5. 6. 1. 3. --> // Obtenir les colonnes dédoublonnées dans leur ordre initial : --> M(:, gsort(kc,"g","i")) ans = 2 0 2 1 1 0 1 0 0 1 2 1 2 2 0 0
Dédoublonnement de nombres complexes :
i = %i; c = [1+i, 1-i, -i, i, -i, 1+i] [u, k] = unique(c) [uc, kc] = unique(c, "c")
--> c = [1+i, 1-i, -i, i, -i, 1+i] c = 1. + i 1. - i -i i -i 1. + i --> [u, k] = unique(c) u = -i i 1. - i 1. + i k = 3. 4. 2. 1.
Dédoublonnement de textes :
t = ["AB" "BA" "BA" "BA" "AB" "BA" "AB" "AB" "BB" "AA" "AB" "BA" "BA" "BA" "AA" "AA" "AA" "AB" "AA" "BB" "BB" "BB" "BA" "AB" "AB" "BB" "BB" "AB" "AB" "AA" ] [u, k] = unique(t) [uc, kc] = unique(t, "c")
t = !AB BA BA BA AB BA AB AB BB AA AB BA BA BA AA ! !AA AA AB AA BB BB BB BA AB AB BB BB AB AB AA ! --> [u, k] = unique(t); u = !AA ! !AB ! !BA ! !BB ! k = 2. 1. 3. 10. --> [uc, kc] = unique(t, "c") uc = !AA AA AB AB AB BA BA BA BB ! !AA AB AA BA BB AA AB BB AB ! kc = 15. 10. 1. 8. 5. 2. 3. 6. 9.
Voir aussi
- members — dénombre (et localise) dans un tableau chaque élément ou ligne ou colonne d'un autre tableau
- gsort — tri par l'algorithme "quick sort"
- vectorfind — finds in a matrix rows or columns matching a vector
- grep — find matches of a string in a vector of strings
- union — extrait les composantes distinctes issues de l'union de deux vecteurs
- intersect — éléments, lignes, ou colonnes communs aux 2 tableaux d'entrée, sans doublon
Historique
Version | Description |
6.0.2 | unique() peut maintenant être utilisée pour dédoublonner des nombres complexes. |
Report an issue | ||
<< union | Ensembles | Traitement du signal >> |