Maison > développement back-end > Tutoriel Python > **Comment puis-je compter efficacement la fréquence des valeurs uniques dans un tableau NumPy ?**

**Comment puis-je compter efficacement la fréquence des valeurs uniques dans un tableau NumPy ?**

Patricia Arquette
Libérer: 2024-10-25 19:22:02
original
1006 Les gens l'ont consulté

**How can I efficiently count the frequency of unique values in a NumPy array?**

Comptage des valeurs uniques dans les tableaux NumPy

Une tâche courante dans l'analyse des données consiste à déterminer la fréquence d'occurrence de chaque valeur unique dans un ensemble de données donné. NumPy propose plusieurs moyens efficaces d'y parvenir pour les tableaux de données numériques.

Une approche consiste à utiliser la fonction np.unique avec le paramètre return_counts défini sur True (disponible dans NumPy version 1.9 et versions ultérieures). Ce paramètre renvoie non seulement les valeurs uniques mais également leurs nombres correspondants.

<code class="python">import numpy as np

x = np.array([1,1,1,2,2,2,5,25,1,1])
unique, counts = np.unique(x, return_counts=True)

print(np.asarray((unique, counts)).T)
'''
Output:
 [[ 1  5]
  [ 2  3]
  [ 5  1]
  [25  1]]
'''</code>
Copier après la connexion

Cette méthode surpasse scipy.stats.itemfreq en termes d'efficacité, comme le démontre la comparaison temporelle suivante :

<code class="python">import numpy as np
import scipy.stats

x = np.random.random_integers(0,100,1e6)

%timeit unique, counts = np.unique(x, return_counts=True)
10 loops, best of 3: 31.5 ms per loop

%timeit scipy.stats.itemfreq(x)
10 loops, best of 3: 170 ms per loop</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal