Rumah  >  Artikel  >  pembangunan bahagian belakang  >  ## Bagaimana untuk Mengira Kiraan Kekerapan dengan Cekap untuk Nilai Berbeza dalam Tatasusunan NumPy?

## Bagaimana untuk Mengira Kiraan Kekerapan dengan Cekap untuk Nilai Berbeza dalam Tatasusunan NumPy?

Susan Sarandon
Susan Sarandonasal
2024-10-27 10:55:30233semak imbas

## How to Efficiently Calculate Frequency Counts for Distinct Values in NumPy Arrays?

Mengira Kiraan Kekerapan untuk Nilai Berbeza dalam Tatasusunan NumPy

Mencari kekerapan kejadian untuk nilai individu dalam tatasusunan NumPy ialah tugas biasa dalam analisis data. Artikel ini menggariskan pendekatan yang cekap untuk mendapatkan kiraan kekerapan ini.

Kaedah:

Kaedah utama untuk mendapatkan kiraan kekerapan dalam NumPy adalah melalui fungsi np.unique, khususnya dengan menetapkan return_counts=True. Sebagai contoh, pertimbangkan tatasusunan berikut:

<code class="python">x = np.array([1,1,1,2,2,2,5,25,1,1])</code>

Untuk mengira kiraan kekerapan unsur-unsur ini:

<code class="python">import numpy as np

unique, counts = np.unique(x, return_counts=True)

print(np.asarray((unique, counts)).T)</code>

Ini akan mengeluarkan:

[[ 1  5]
 [ 2  3]
 [ 5  1]
 [25  1]]

Sambil anda boleh lihat, tatasusunan yang terhasil mengandungi nilai unik (dalam lajur pertama) dan frekuensi masing-masing (dalam lajur kedua).

Perbandingan dan Prestasi:

The kaedah np.unique dengan return_counts=True menawarkan prestasi yang lebih baik berbanding pendekatan lain, seperti scipy.stats.itemfreq. Untuk tatasusunan besar, masa yang diambil oleh np.unique dikurangkan dengan ketara, seperti yang ditunjukkan dalam perbandingan penanda aras berikut:

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

%timeit unique, counts = np.unique(x, return_counts=True) # 31.5 ms per loop

%timeit scipy.stats.itemfreq(x) # 170 ms per loop</code>

Kesimpulan:

NP.unique fungsi dalam NumPy menyediakan penyelesaian yang cekap untuk mendapatkan kiraan kekerapan nilai unik dalam tatasusunan. Kelebihan prestasinya berbanding kaedah alternatif menjadikannya pilihan pilihan untuk set data yang besar.

Atas ialah kandungan terperinci ## Bagaimana untuk Mengira Kiraan Kekerapan dengan Cekap untuk Nilai Berbeza dalam Tatasusunan 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