Как отсортировать список сначала по частоте элементов, а затем по значению элемента - PullRequest
0 голосов
/ 03 июня 2019

Мне нужно взять список чисел в python и найти наиболее распространенный элемент, но если есть связь, мне нужен элемент с наименьшим значением. Например, если наиболее распространенным элементом в списке является связь между 3 и 4, мне нужно получить значение 3, поскольку оно меньше из двух.

1 Ответ

2 голосов
/ 03 июня 2019
import collections

x = [2,4,3,2,6,4,4,4,3,3,3]

counts = collections.Counter(x)

new_list = sorted(x, key=lambda i: (-counts[i],i))

print(new_list[0])

Выход: 3

Там ваш товар всегда в new_list [0]

...