Python >> Tutoriel Python >  >> Python

Trouver la valeur la plus fréquente dans une liste en Python

Dans les structures de données des listes Python, il existe de nombreuses approches pour trouver la valeur fréquemment présente dans la liste. Nous discuterons de certaines approches ici.

Approches avec exemples

  1. Utilisation de la boucle for :
    C'est une approche un peu déroutante plutôt brutale mais familière pour les débutants en python, nous utiliserons ici la boucle for pour compter les fréquences des éléments/valeurs dans la liste et appliquer l'instruction if et continuer à mettre à jour le compteur . C'est une méthode courante mais pas aussi efficace car le code devient très volumineux

    list_no1 = [2,3,2,4,4,4,6,6,8,8,7,0,7,7,2,3,2,2,1,1,0]
    #creating an function 
    def frequent(list_no1):
        count = 0
        no = list_no1[0]
        #for loop 
        for i in  list_no1:
            current_freq = list_no1.count(i)
            if (current_freq > count):
                count = current_freq
                num = i
                
        return num 
    print(frequent(list_no1))
    Output: 2

    Ainsi, la valeur la plus fréquente dans notre liste est 2 et nous sommes capables de la trouver en Python.

  2. Par mode recherche :
    Le mode n'est rien d'autre que le numéro le plus fréquent dans une liste, c'est une partie importante des statistiques, Python nous permet d'importer un module de statistiques et d'effectuer des opérations statistiques. C'est l'une des approches efficaces pour trouver la valeur la plus fréquente en Python, voyons le code :

    #importing libraries 
    import statistics 
    from statistics import mode 
    list_no1 = [2,3,2,4,4,4,6,6,8,8,7,0,7,7,2,3,2,2,1,1,0]
    frequent = mode(list_no1)
    print(frequent)
    
    Output: 2

Utilisation des fonctions max &set :
Dans cette approche, nous allons créer un ensemble de la liste pour supprimer les valeurs en double, puis utiliser une fonction max qui prend en deux arguments une fonction itérable et une fonction clé qui renverra la valeur principalement survenue

list_no1 = [2,3,2,4,4,4,6,6,8,8,7,0,7,7,2,3,2,2,1,1,0]
set(list_no1)
frequent = max(set(list_no1), key = list_no1.count)
print(frequent)
Output: 2

Voici quelques approches simples pour trouver la valeur la plus fréquente dans une liste avec la programmation Python.
Nous pouvons donc voir que la sortie de chaque approche est la même pour le même list_no1.
J'espère que cela vous aidera.
Merci !