Как подсчитать уникальные значения в массиве NumPy (3 примера)


Вы можете использовать следующие методы для подсчета уникальных значений в массиве NumPy:

Способ 1: отображение уникальных значений

np.unique (my_array)

Метод 2: подсчет количества уникальных значений

len (np.unique (my_array))

Способ 3: подсчет вхождений каждого уникального значения

np.unique (my_array, return_counts= True )

В следующих примерах показано, как использовать каждый метод на практике со следующим массивом NumPy:

import numpy as np

#create NumPy array
my_array = np.array([1, 3, 3, 4, 4, 7, 8, 8])

Пример 1: отображение уникальных значений

Следующий код показывает, как отобразить уникальные значения в массиве NumPy:

#display unique values
np.unique (my_array)

array([1, 3, 4, 7, 8])

На выходе мы видим каждое из уникальных значений в массиве NumPy: 1, 3, 4, 7, 8.

Пример 2. Подсчет количества уникальных значений

В следующем коде показано, как подсчитать общее количество уникальных значений в массиве NumPy:

#display total number of unique values
len (np.unique (my_array))

5

Из вывода мы видим, что в массиве NumPy есть 5 уникальных значений.

Пример 3. Подсчет вхождений каждого уникального значения

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

#count occurrences of each unique value
np.unique (my_array, return_counts= True )

(array([1, 3, 4, 7, 8]), array([1, 2, 2, 1, 2]))

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

Мы можем использовать следующий код для вывода этого вывода в более удобном для чтения формате:

#get unique values and counts of each value
unique, counts = np.unique (my_array, return_counts= True )

#display unique values and counts side by side
print(np.asarray ((unique, counts)). T )

[[1 1]
 [3 2]
 [4 2]
 [7 1]
 [8 2]]

Из вывода мы видим:

  • Значение 1 встречается 1 раз.
  • Значение 3 встречается 2 раза.
  • Значение 4 встречается 2 раза.
  • Значение 7 встречается 1 раз.
  • Значение 8 встречается 2 раза.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в Python:

Как рассчитать режим массива NumPy
Как сопоставить функцию с массивом NumPy
Как отсортировать массив NumPy по столбцу

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.