Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengira Nilai Unik dengan Cekap dalam Array NumPy?

Bagaimana untuk Mengira Nilai Unik dengan Cekap dalam Array NumPy?

Linda Hamilton
Linda Hamiltonasal
2024-10-26 12:31:02543semak imbas

How to Efficiently Count Unique Values in a NumPy Array?

Dengan Cekap Menentukan Kiraan Kekerapan Nilai Unik dalam Tatasusunan NumPy

Artikel ini meneroka kaedah yang cekap untuk mengira kiraan kekerapan bagi nilai unik dalam tatasusunan NumPy.

Menggunakan numpy.unique dengan return_counts=True (untuk NumPy versi 1.9 dan ke atas) membolehkan pengiraan yang cekap bagi kedua-dua nilai unik dan kiraan sepadannya. Sebagai ilustrasi:

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

Pendekatan ini dengan ketara mengatasi fungsi scipy.stats.itemfreq dari segi kelajuan pelaksanaan, seperti yang ditunjukkan dalam penanda aras prestasi:

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

Atas ialah kandungan terperinci Bagaimana untuk Mengira Nilai Unik dengan Cekap dalam Array NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn