NumPy : Comment compter le nombre d’éléments égaux à True



Vous pouvez utiliser la syntaxe de base suivante pour compter le nombre d’éléments égaux à True dans un tableau NumPy :

import numpy as np

np.count_nonzero(my_array)

Cet exemple particulier renverra le nombre d’éléments égal à True dans le tableau NumPy appelé my_array .

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : compter le nombre d’éléments égaux à True dans le tableau NumPy

Le code suivant montre comment utiliser la fonction count_nonzero() pour compter le nombre d’éléments dans un tableau NumPy égal à True :

import numpy as np

#create NumPy array
my_array = np.array([True, False, False, False, True, True, False, True, True])

#count number of values in array equal to True
np.count_nonzero(my_array)

5

À partir de la sortie, nous pouvons voir que 5 valeurs du tableau NumPy sont égales à True .

Nous pouvons regarder manuellement le tableau NumPy pour vérifier qu’il y a bien trois éléments égaux à True dans le tableau.

Si vous souhaitez plutôt compter le nombre d’éléments égal à False , vous pouvez soustraire les résultats de la fonction count_nonzero() de la fonction size() comme suit :

import numpy as np

#create NumPy array
my_array = np.array([True, False, False, False, True, True, False, True, True])

#count number of values in array equal to False
np.size(my_array) - np.count_nonzero(my_array)

4

À partir de la sortie, nous pouvons voir que 4 valeurs du tableau NumPy sont égales à False .

Remarque : Si vous avez des valeurs NaN dans votre tableau NumPy, la fonction count_nonzero() comptera chaque valeur NaN comme un élément égal à True.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :

Comment calculer le mode du tableau NumPy
Comment mapper une fonction sur un tableau NumPy
Comment trier un tableau NumPy par colonne

Ajouter un commentaire

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