Comment trouver la valeur la plus fréquente dans le tableau NumPy (avec exemples)



Vous pouvez utiliser les méthodes suivantes pour rechercher la valeur la plus fréquente dans un tableau NumPy :

Méthode 1 : Trouver la valeur la plus fréquente

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

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

Si plusieurs valeurs apparaissent le plus fréquemment dans le tableau NumPy, cette méthode ne renverra que la première valeur.

Méthode 2 : trouver chaque valeur la plus fréquente

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

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

Si plusieurs valeurs apparaissent le plus fréquemment dans le tableau NumPy, cette méthode renverra chacune des valeurs les plus fréquentes.

Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.

Exemple 1 : Rechercher la valeur la plus fréquente dans le tableau NumPy

Supposons que nous ayons le tableau NumPy suivant :

import numpy as np

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

Notez qu’il n’y a qu’une seule valeur qui apparaît le plus fréquemment dans ce tableau : 4 .

Nous pouvons utiliser la fonction argmax() pour renvoyer la valeur qui apparaît le plus fréquemment dans le tableau :

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

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

4

La fonction renvoie correctement la valeur 4 .

Exemple 2 : Rechercher chaque valeur la plus fréquente dans le tableau NumPy

Supposons que nous ayons le tableau NumPy suivant :

import numpy as np

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

Notez qu’il y a deux valeurs qui apparaissent le plus fréquemment dans ce tableau : 4 et 12 .

Nous pouvons utiliser la fonction max() pour renvoyer chacune des valeurs qui apparaissent le plus fréquemment dans le tableau :

#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])

La fonction renvoie correctement les valeurs 4 et 12 .

Remarque : Vous pouvez trouver la documentation complète de la fonction NumPy unique() ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans NumPy :

Comment supprimer les éléments en double dans le tableau NumPy
Comment remplacer des éléments dans un tableau NumPy
Comment classer les éléments dans le tableau NumPy

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *