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 ?

DDD
DDDoriginal
2024-10-26 18:14:30548parcourir

##  How Can I Efficiently Count the Frequency of Unique Values in a NumPy Array?

Comptage de fréquence efficace pour les valeurs uniques dans les tableaux NumPy

Pour un comptage de fréquence efficace des valeurs uniques dans un tableau NumPy, envisagez d'utiliser numpy.unique avec l'option return_counts=True, notamment pour les versions NumPy 1.9 et supérieures. Cette approche fournit à la fois des valeurs uniques et leurs comptes respectifs.

<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 in tuple format</code>

Cette approche surpasse scipy.stats.itemfreq en termes d'efficacité, comme démontré ci-dessous :

<code class="python">x = np.random.random_integers(0,100,1e6)

%timeit unique, counts = np.unique(x, return_counts=True)  # 31.5 ms
%timeit scipy.stats.itemfreq(x)  # 170 ms</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