Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mengira Nilai Purata dengan Berbilang Kumpulan dalam Panda?
Kumpulan demi Pengagregatan dengan Berbilang Kumpulan dan Purata
Dalam Panda, melaksanakan pengagregatan pada data yang dikumpulkan mengikut berbilang peringkat ialah operasi biasa. Pertimbangkan DataFrame berikut:
cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6
Tugas biasa ialah mengira purata lajur tertentu, seperti "masa," setiap kumpulan yang ditakrifkan oleh berbilang pembolehubah, seperti "kelompok" dan "org."
Penyelesaian 1: Min pada Kumpulan Kluster Sahaja
Untuk mengira min bagi "masa" dikumpulkan mengikut "kluster" sahaja, anda boleh menggunakan kod berikut:
df.groupby(['cluster']).mean()
Keputusan:
time cluster 1 12.333333 2 54.000000 3 6.000000
Penyelesaian 2: Min pada Gabungan Kumpulan
Jika anda ingin mengira min "masa" bagi setiap gabungan "kluster" dan "org," anda boleh menggunakan:
df.groupby(['cluster', 'org']).mean()
Keputusan:
time cluster org 1 a 438886 c 23 2 d 9874 h 34 3 w 6
Penyelesaian 3: Min Bersarang pada Kumpulan
Untuk melakukan min bersarang, mula-mula purata pada gabungan "kluster" dan "org" dan kemudian purata pada kumpulan "kluster", gunakan:
(df.groupby(['cluster', 'org'], as_index=False).mean() .groupby('cluster')['time'].mean())
Keputusan:
cluster mean(time) 1 15 #=((8 + 6) / 2 + 23) / 2 2 54 #=(74 + 34) / 2 3 6
Atas ialah kandungan terperinci Bagaimana untuk Mengira Nilai Purata dengan Berbilang Kumpulan dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!