Pengiraan Pengumpulan Data Pandas dan Pengambilan Kiraan Maks
Masalah:
Diberi Bingkai Data Pandas dengan berbilang lajur, bagaimanakah anda boleh mengumpulkan baris dengan cekap mengikut dua lajur tertentu dan mendapatkan kiraan dalam setiap kumpulan? Selain itu, bagaimanakah anda menentukan kiraan maksimum bagi setiap nilai dalam salah satu lajur pengumpulan?
Penyelesaian:
Untuk mengumpulkan baris DataFrame mengikut dua lajur dan kiraan kejadian , gunakan fungsi groupby() diikuti dengan kaedah size():
<code class="python">df.groupby(['col5', 'col2']).size()</code>
Operasi ini mencipta kumpulan berdasarkan lajur yang ditentukan dan mengembalikan kiraan baris dalam setiap kumpulan. Output akan menyerupai yang berikut:
col5 col2 count 1 A 1 D 3 2 B 2 ...
Untuk mencari kiraan maksimum bagi setiap nilai dalam lajur col2:
<code class="python">df.groupby(['col5', 'col2']).size().groupby(level=1).max()</code>
Operasi ini mengumpulkan data kiraan mengikut tahap lajur col2 dan mengembalikan kiraan maksimum untuk setiap nilai col2, menghasilkan output seperti:
col2 A 3 B 2 C 1 D 3
Nota Tambahan:
Untuk mengumpulkan mengikut berbilang lajur dan mendapatkan kiraan serta statistik ringkasan tambahan , anda boleh menggunakan groupby() bersama-sama dengan kaedah lain seperti agg(), yang membolehkan anda menentukan berbilang fungsi pengagregatan:
<code class="python">df.groupby(['col5', 'col2']).agg(['count', 'mean', 'max'])</code>
Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Data Panda, Mengira Kejadian dan Mencari Kiraan Maksimum?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!