Как найти наиболее часто встречающееся значение в массиве numpy (с примерами)


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

Способ 1. Найдите наиболее часто встречающееся значение.

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

#display value with highest frequency
values[counts. argmax ()]

Если в массиве NumPy чаще всего встречается несколько значений, этот метод вернет только первое значение.

Способ 2. Найдите каждое наиболее часто встречающееся значение.

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

#display all values with highest frequencies
values[counts == counts. max ()]

Если в массиве NumPy чаще всего встречается несколько значений, этот метод вернет каждое из наиболее частых значений.

Следующие примеры показывают, как использовать каждый метод на практике.

Пример 1. Найдите наиболее частое значение в массиве NumPy.

Предположим, у нас есть следующий массив NumPy:

 import numpy as np

#create NumPy array
my_array = np. array ([1, 2, 4, 4, 4, 5, 6, 7, 12])

Обратите внимание, что в этой таблице чаще всего встречается только одно значение: 4 .

Мы можем использовать функцию argmax() для возврата значения, которое чаще всего появляется в массиве:

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

#display value with highest frequency
values[counts. argmax ()]

4

Функция правильно возвращает значение 4 .

Пример 2. Найдите каждое наиболее часто встречающееся значение в массиве NumPy.

Предположим, у нас есть следующий массив NumPy:

 import numpy as np

#create NumPy array
my_array = np. array ([1, 2, 4, 4, 4, 5, 6, 7, 12, 12, 12])

Обратите внимание, что в этой таблице чаще всего встречаются два значения: 4 и 12 .

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

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

#display each value with highest frequency
values[counts == counts. max ()]

array([4,12])

Функция корректно возвращает значения 4 и 12 .

Примечание . Полную документацию по функции NumPy unique() можно найти здесь .

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

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *