Dapatkan Statistik untuk Setiap Kumpulan Menggunakan Pandas GroupBy
Apabila melakukan analisis data, selalunya perlu meringkaskan data dan mengira statistik untuk kumpulan pemerhatian . Fungsi GroupBy Pandas menyediakan cara yang mudah untuk melakukan ini.
Untuk mengira statistik kumpulan, hanya gunakan kaedah .groupby() pada DataFrame dan tentukan lajur untuk dikumpulkan mengikut. Kemudian, anda boleh menggunakan kaedah .agg() untuk mengagregat data dalam setiap kumpulan.
Sebagai contoh, kod berikut mengumpulkan data mengikut lajur "col1" dan "col2" dan mengira min:
df['col1', 'col2'].groupby(['col1', 'col2']).mean()
Ini akan mengembalikan DataFrame dengan statistik kumpulan, serupa kepada:
col3 col4 col5 col6 col1 col2 A B -0.3725 -0.810 0.0325 0.5425 C D -0.4766 -0.110 1.3467 -0.6833 E F 0.4550 0.475 -1.0650 0.0300 G H 1.4800 -0.630 0.6500 0.1700
Termasuk Kiraan Baris
Menambah kiraan baris pada statistik kumpulan adalah mudah. Anda boleh menggunakan kaedah .size() untuk mengira bilangan baris dalam setiap kumpulan. Contohnya:
df.groupby(['col1', 'col2']).size()
Ini akan mengembalikan Siri dengan kiraan baris, yang kemudiannya boleh anda tambahkan pada DataFrame:
df.groupby(['col1', 'col2']).size().reset_index(name='counts')
Termasuk Berbilang Statistik
Selain min, anda boleh mengira statistik lain seperti median, minimum dan maksimum menggunakan .agg() kaedah. Sebagai contoh, kod berikut mengira min, median dan minimum lajur "col4":
df.groupby(['col1', 'col2']).agg({'col4': ['mean', 'median', 'min']})
Ini akan mengembalikan DataFrame dengan statistik kumpulan, serupa dengan:
col4 mean median min col1 col2 A B -0.3725 -0.810 -1.32 C D -0.4766 -0.110 -1.65 E F 0.4550 0.475 -0.47 G H 1.4800 -0.630 -0.63
Pertimbangan Tambahan
Atas ialah kandungan terperinci Bagaimanakah Pandas GroupBy Boleh Mengira Statistik dan Menyertakan Kiraan Baris untuk Analisis Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!