Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語 -
Справка Scilab >> Основные функции > Операции с множествами > unique

unique

удалить все повторяющиеся компоненты из вектора или матрицы

Синтаксис

[N ,k] = unique(M)
[N ,k] = unique(M ,orient)

Аргументы

M

вектор или матрица чисел или строк

orient

флаг с возможными значениями: 1 или "r", 2 или "c"

N

  • Если orient не используется: вектор извлечённых M компонентов, сортированных в полядке возрастания.
  • Если orient используется: матрица извлечённых M строк или столбцов, сортированных в лексикографическом порядке возрастания.

k

Вектор индексов первых встреченных значений, таких что N(i) = M(k(i)) или N(i,:) = M(k(i),:) или N(:,i) = M(:,k(i)).

Описание

unique(M) возвращает вектор, который содержит уникальные элементы M в порядке возрастания.

unique(M,"r") или unique(M,1) возвращает уникальные строки M в лексикографическом порядке возрастания.

unique(M,"c") или unique(M,2) возвращает уникальные столбцы M в лексикографическом порядке возрастания.

Извлечённые компоненты, строки или столбцы могут быть пересортированны в их исходном порядке через сортировку с помощью k:
[N, k] = unique(M);      k = gsort(k,"g",i); N = N(k)
[N, k] = unique(M, "c"); k = gsort(k,"g",i); N = N(:, k)
[N, k] = unique(M, "r"); k = gsort(k,"g",i); N = N(k, :)

Примеры

M = round(2*rand(20,1));
unique(M)
[N,k] = unique(M)

unique(string(M))
[N,k] = unique(string(M))

A = [0,0,1,1;
     0,1,1,1;
     2,0,1,1;
     0,2,2,2;
     2,0,1,1;
     0,0,1,1];
T = 'x' + string(A);

//уникальные строки
[m,k] = unique(A,'r')
unique(T,'r')

//уникальные столбцы
[m,k] = unique(T,'c')
unique(A,'c')

Смотрите также

  • members — count (and locate) in an array each element or row or column of another array
  • gsort — сортировка по алгоритму быстрой сортировки
  • vectorfind — ищет в строках или столбцах матриц совпадения с вектором
  • grep — поиск соответствий строки в векторе строк
  • union — выделяет объединение компонентов векторов
  • intersect — возвращает вектор значений, общих для двух векторов/матриц
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Feb 12 20:08:34 CET 2018