Maison  >  Article  >  développement back-end  >  Comment compter efficacement les valeurs uniques dans un tableau NumPy ?

Comment compter efficacement les valeurs uniques dans un tableau NumPy ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-26 12:31:02543parcourir

How to Efficiently Count Unique Values in a NumPy Array?

Détermination efficace des décomptes de fréquence de valeurs uniques dans des tableaux NumPy

Cet article explore une méthode efficace pour calculer les décomptes de fréquence de valeurs uniques dans un tableau NumPy.

Utiliser numpy.unique avec return_counts=True (pour les versions NumPy 1.9 et supérieures) permet un calcul efficace des valeurs uniques et de leurs décomptes correspondants. À titre d'illustration :

<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)</code>

Cette approche surpasse considérablement la fonction scipy.stats.itemfreq en termes de vitesse d'exécution, comme le démontrent les benchmarks de performances :

<code class="python">In [4]: x = np.random.random_integers(0,100,1e6)

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

In [6]: %timeit scipy.stats.itemfreq(x)
10 loops, best of 3: 170 ms per loop</code>

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:
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