Spec-Zone.ru › NumPy 1.12

numpy.unique

numpy.unique(ar, return_index=False, return_inverse=False, return_counts=False) [source]

Нахождение уникальных элементов массива.

Возвращает отсортированные уникальные элементы массива. Помимо уникальных элементов, доступны три дополнительных выходных значения: индексы входного массива, соответствующие уникальным значениям, индексы уникального массива, позволяющие восстановить входной массив, и количество вхождений каждого уникального значения в входном массиве.

Параметры:

ar : array_like

Входной массив. Он будет выровнен, если он не является одномерным.

return_index : bool, необязательно

Если True, также возвращает индексы ar , которые приводят к уникальному массиву.

return_inverse : bool, необязательно

Если True, также возвращает индексы уникального массива, которые можно использовать для восстановления ar.

return_counts : bool, необязательно

Если True, также возвращает количество вхождений каждого уникального значения в ar.

Новая функция в версии 1.9.0.

Возвращает:

unique : ndarray

Отсортированные уникальные значения.

unique_indices : ndarray, необязательно

Индексы первых вхождений уникальных значений в (выровненном) исходном массиве. Возвращается только если return_index равно True.

unique_inverse : ndarray, необязательно

Индексы для восстановления (выровненного) исходного массива из уникального массива. Возвращается только если return_inverse равно True.

unique_counts : ndarray, необязательно

Количество вхождений каждого уникального значения в исходном массиве. Возвращается только если return_counts равно True.

Новая функция в версии 1.9.0.

См. также

numpy.lib.arraysetops
Модуль с рядом других функций для выполнения операций над множествами с массивами.

Примеры

>>> np.unique([1, 1, 2, 2, 3, 3])
array([1, 2, 3])
>>> a = np.array([[1, 1], [2, 3]])
>>> np.unique(a)
array([1, 2, 3])

Возвращение индексов исходного массива, соответствующих уникальным значениям:

>>> a = np.array(['a', 'b', 'b', 'c', 'a'])
>>> u, indices = np.unique(a, return_index=True)
>>> u
array(['a', 'b', 'c'],
       dtype='|S1')
>>> indices
array([0, 1, 3])
>>> a[indices]
array(['a', 'b', 'c'],
       dtype='|S1')

Восстановление входного массива из уникальных значений:

>>> a = np.array([1, 2, 6, 4, 2, 3, 2])
>>> u, indices = np.unique(a, return_inverse=True)
>>> u
array([1, 2, 3, 4, 6])
>>> indices
array([0, 1, 4, 3, 1, 2, 1])
>>> u[indices]
array([1, 2, 6, 4, 2, 3, 2])

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.12.0/reference/generated/numpy.unique.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API