Trouver l'élément d'une liste avec le maximum d'occurrences sous python

Published: 26 décembre 2017

DMCA.com Protection Status

Pour trouver l'élément d'une liste avec le maximum d'occurrences, on peut utiliser la fonction counter, exemple:

Trouver l'élément avec le maximum d'occurrences pour une liste de nombres

Exemple avec une liste de nombres:

>>> from collections import Counter
>>> l = [8, 3, 9, 2, 7, 1, 3, 2, 0, 0, 7, 8, 6, 9, 4, 6, 3, 3, 2, 5]
>>> Counter(l).most_common(1)
[(3, 4)]

on trouve ici comme résultat 3 avec 4 occurrences dans la liste l.

Note: on peut utiliser la fonction Counter(l).most_common() pour trier les éléments d'une liste en fonction du nombre d'occurrences:

>>> from collections import Counter
>>> l = [8, 3, 9, 2, 7, 1, 3, 2, 0, 0, 7, 8, 6, 9, 4, 6, 3, 3, 2, 5]
>>> Counter(l).most_common()
[(3, 4), (2, 3), (8, 2), (9, 2), (7, 2), (0, 2), (6, 2), (1, 1), (4, 1), (5, 1)]

Trouver l'élément avec le maximum d'occurrences pour une liste de string

Marche aussi pour une liste avec des lettres, exemple:

>>> from collections import Counter
>>> l = ['a','a','a','b','c','c','d','d','d','d']
>>> Counter(l).most_common(1)
[('d', 4)]

Trier la liste en fonction du nombre d'occurrences

>>> from collections import Counter
>>> Counter(l).most_common()
[('d', 4), ('a', 3), ('c', 2), ('b', 1)]

Références