Dalam Panda, anda boleh melakukan pengumpulan dan pengagregatan berbilang peringkat untuk mengira statistik yang kompleks. Satu tugas biasa ialah mengira purata lajur dalam kumpulan yang ditakrifkan oleh berbilang lajur lain.
Pertimbangkan DataFrame berikut:
cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6
Untuk mengira purata masa setiap org dalam setiap kelompok , anda boleh mengumpulkan DataFrame mengikut kluster dan org:
df.groupby(['cluster', 'org'], as_index=False).mean()
Ini akan menghasilkan DataFrame yang dikumpulkan mengikut kluster dan org, dengan purata masa dikira untuk setiap kumpulan:
cluster org time 0 1 a 12.333333 1 1 c 23.0 2 2 h 34.0 3 2 d 74.0 4 3 w 6.0
Jika anda hanya mahukan min masa dalam setiap kluster, anda boleh mengumpulkan hanya mengikut kluster:
df.groupby('cluster').mean()
Ini akan menghasilkan DataFrame dengan purata masa yang dikira untuk setiap kluster:
cluster time 0 1 12.333333 1 2 54.0 2 3 6.0
Sebagai alternatif, anda boleh menggunakan kaedah berkumpulan pada gabungan berbilang lajur ['cluster', 'org'] dan kemudian mengira min masa:
df.groupby(['cluster', 'org']).mean()['time']
Ini akan menghasilkan Siri dengan purata masa yang dikira untuk setiap gabungan kluster dan org.
Atas ialah kandungan terperinci Bagaimana untuk Mengira Nilai Purata Dalam Berbilang Kumpulan dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!