Rumah >pembangunan bahagian belakang >Tutorial Python >Pandas GroupBy: Bilakah Saya Harus Menggunakan `count()` vs. `size()`?
Memahami Perbezaan Antara saiz dan kiraan dalam Panda
Dalam Panda, operasi kumpulan mengikut menyediakan alatan berkuasa untuk penerokaan dan pengagregatan data. Antara operasi kumpulan mengikut yang biasa digunakan ialah kiraan dan saiz. Memahami perbezaannya adalah penting untuk menganalisis data anda dengan berkesan.
kiraan lwn. saiz
Operasi kiraan mengira bilangan nilai bukan nol dalam kumpulan. Sebaliknya, operasi saiz mengira semua nilai, termasuk nilai NaN. Perbezaan ini menjadi jelas apabila bekerja dengan set data yang mengandungi nilai yang tiada.
Sebagai contoh, pertimbangkan DataFrame berikut:
df = pd.DataFrame({'a':[0,0,1,2,2,2], 'b':[1,2,3,4,np.NaN,4], 'c':np.random.randn(6)})
Jika kami mengumpulkan mengikut lajur 'a' dan menggunakan kiraan pada lajur 'b ':
print(df.groupby(['a'])['b'].count())
Kami mendapat output berikut:
a 0 2 1 1 2 2 Name: b, dtype: int64
Ini menunjukkan bahawa terdapat ialah dua nilai bukan nol untuk kumpulan 0, satu untuk kumpulan 1, dan dua untuk kumpulan 2.
Sebaliknya, jika kita menggunakan saiz:
print(df.groupby(['a'])['b'].size())
Kami memperoleh:
a 0 2 1 1 2 3 dtype: int64
Dalam kes ini, hasilnya termasuk nilai NaN dalam kumpulan 2, menunjukkan bahawa saiz menyumbang untuk semua nilai.
Oleh itu, menjadi penting untuk memilih antara kiraan dan saiz berdasarkan konteks khusus dan analisis yang diingini. Jika anda ingin mengecualikan nilai nol daripada kiraan anda, gunakan count. Jika anda perlu mengambil kira semua nilai, tanpa mengira kehadiran atau ketiadaannya, gunakan saiz.
Atas ialah kandungan terperinci Pandas GroupBy: Bilakah Saya Harus Menggunakan `count()` vs. `size()`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!