Модулът numpy на Python предоставя функция за намиране на уникални елементи в масив numpy. Функцията numpy.unique() намира уникалните елементи на масив и връща тези уникални елементи като сортиран масив. Освен уникалните елементи, има и някои незадължителни изходи, които са както следва:
- Резултатът може да бъде индексите на входния масив, които дават уникалните стойности
- Резултатът може да бъде индексите на уникалния масив, които реконструират входния масив
- Резултатът може да бъде масив от броя пъти, когато всяка уникална стойност идва във входния масив.
Синтаксис
numpy.unique(a, return_index=False, return_inverse=False, return_counts=False, axis=None)
Параметри
Това са следните параметри във функцията numpy.mean():
a: array_like
Този параметър дефинира изходния масив, съдържащ елементи, чиито уникални стойности са желани. Масивът ще бъде изравнен, ако не е 1-D масив.
Върнат_индекс: bool(по избор)
Мадхури каза давай
Ако този параметър е зададен True, функцията ще върне индексите на входния масив (по посочената ос, ако е предоставена, или в плоския масив), което води до уникалния масив.
return_inverse: bool(по избор)
Ако този параметър е зададен True, функцията също ще върне индексите на входния масив (по посочената ос, ако е предоставена, или в плоския масив), които могат да се използват за реконструиране на входния масив.
Return_counts: bool(по избор)
Ако този параметър е зададен True, функцията ще върне броя пъти, когато всеки уникален елемент се е появил във входния масив 'a'.
ос: int или None (по избор)
Този параметър определя оста, върху която да се работи. Ако този параметър не е зададен, тогава масивът 'a' ще бъде изравнен. Ако този параметър е цяло число, тогава подмасивите, индексирани от дадената ос, ще бъдат сплескани и третирани като елемент от 1-D масив с размерността на дадената ос. Структурирани масиви или обектни масиви, които съдържат обекти, не се поддържат, ако се използва оста „kwarg“.
javascript коментар
Се завръща
Тази функция връща четири вида изходи, които са както следва:
уникален: ndarray
В този изход ще бъде показан ndarray, който съдържа сортирани уникални стойности.
уникални_индекси: ndarray(по избор)
В този изход ще бъде показан ndarray, който съдържа индексите на първите срещания на уникалните стойности в оригиналния масив. Този изход се предоставя само ако return_index е True.
уникален_обратен: ndarray(по избор)
В този изход ще бъде показан ndarray, който съдържа индексите за реконструиране на оригиналния масив от уникалния масив. Този изход се предоставя само ако return_inverse е True.
уникални_броя: ndarray(по избор)
В този изход ще бъде показан ndarray, който съдържа броя пъти, когато всяка от уникалните стойности се появява в оригиналния масив. Този изход се предоставя само ако return_counts е True.
javascript base64 декодиране
Пример 1:
import numpy as np a=np.unique([1,2,3,4,3,6,2,4]) a
Изход:
array([1, 2, 3, 4, 6])
В горния код
- Импортирахме numpy с псевдоним np.
- Декларирахме променливата 'a' и присвоихме върнатата стойност на функцията np.unique().
- Предадохме броя на елементите във функцията.
- Накрая се опитахме да отпечатаме стойността на 'a'.
В резултата е показан ndarray, който съдържа уникални елементи.
Пример 2:
a=np.array([[1,2,2,3,9],[1,4,3,5,8]]) a b=np.unique(a) b
Изход:
array([[1, 2, 2, 3, 9], [1, 4, 3, 5, 8]]) array([1, 2, 3, 4, 5, 8, 9])
Пример 3:
import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 3, 4],[5, 9, 8],[2, 3, 4]]) a b=np.unique(a, axis=0) b
Изход:
array([[1, 1, 0], [1, 1, 0], [2, 3, 4], [5, 9, 8], [2, 3, 4]]) array([[1, 1, 0], [2, 3, 4], [5, 9, 8]])
В горния код
listnode java
- Импортирахме numpy с псевдоним np.
- Създадохме многоизмерен масив 'a'.
- Декларирахме променливата 'b' и присвоихме върнатата стойност на функцията np.unique().
- Предадохме многомерния масив 'a' и ос като 0 във функцията.
- Накрая се опитахме да отпечатаме стойността на 'b'.
В изхода е показан ndarray, който съдържа уникални редове от изходния масив „a“.
Пример 4:
import numpy as np a = np.array([[1, 1, 0], [1, 1, 0], [2, 2, 4],[5, 5, 8],[2, 2, 4]]) a b=np.unique(a, axis=1) b
Изход:
array([[1, 1, 0], [1, 1, 0], [2, 2, 4], [5, 5, 8], [2, 2, 4]]) array([[0, 1], [0, 1], [4, 2], [8, 5], [4, 2]])
Забележка: Когато зададем axis като 1, тази функция връща уникалните колони от изходния масив.
Пример 5: Използвайте return_index
import numpy as np a = np.array(['d', 'b', 'b', 'z', 'a']) result, indices=np.unique(a,return_index=True) result indices a[indices]
Изход:
array(['a', 'b', 'd', 'z'], dtype='|S1') array([4, 1, 0, 3], dtype=int64) array(['a', 'b', 'd', 'z'], dtype='|S1')
В горния код
- Импортирахме numpy с псевдоним np.
- Създадохме масив 'a'.
- Декларирахме променливите 'result' и 'indices' и присвоихме върнатата стойност на функцията np.unique().
- Предадохме масива 'a' и зададохме return_index на True във функцията.
- И накрая, опитахме да отпечатаме стойността на „резултат“, „индекси“ и елементи на масива, което показва индексите („a [индекси]“).
В изхода е показан ndarray, който съдържа индексите на оригиналния масив, които дават уникални стойности.
Пример 6: Използвайте return_inverse
Можем да реконструираме входния масив от уникалните стойности по следния начин:
import numpy as np a = np.array([1, 2, 6, 4, 5, 3, 2]) result, indices=np.unique(a,return_inverse=True) result indices a[indices]
Изход:
array([1, 2, 3, 4, 5, 6]) array([0, 1, 5, 3, 4, 2, 1], dtype=int64) array([1, 2, 3, 4, 5, 6, 2])