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
926 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!

source:php.cn
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