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–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.unique.html