Heim >Backend-Entwicklung >Python-Tutorial >## Wie kann ich die Häufigkeit eindeutiger Werte in einem NumPy-Array effizient zählen?

## Wie kann ich die Häufigkeit eindeutiger Werte in einem NumPy-Array effizient zählen?

DDD
DDDOriginal
2024-10-26 18:14:30548Durchsuche

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

Effiziente Häufigkeitszählung für eindeutige Werte in NumPy-Arrays

Für eine effiziente Häufigkeitszählung eindeutiger Werte in einem NumPy-Array sollten Sie die Verwendung von numpy.unique in Betracht ziehen mit der Option return_counts=True, insbesondere für NumPy-Versionen 1.9 und höher. Dieser Ansatz liefert sowohl eindeutige Werte als auch deren jeweilige Anzahl.

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

Dieser Ansatz übertrifft scipy.stats.itemfreq in puncto Effizienz, wie unten gezeigt:

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

Das obige ist der detaillierte Inhalt von## Wie kann ich die Häufigkeit eindeutiger Werte in einem NumPy-Array effizient zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn