Dengan Panda, anda boleh melakukan pelbagai operasi pengagregatan untuk mengurangkan dimensi dan meringkaskan data.
Panda menyediakan banyak pengagregatan fungsi, termasuk min(), sum(), count(), min(), dan max(). Anda boleh menggunakan fungsi ini untuk mengira statistik ringkasan bagi setiap kumpulan. Contohnya:
# Calculate mean of each group based on 'A' and 'B' columns df1 = df.groupby(['A', 'B']).mean() # Print the results print(df1)
Apabila anda menggunakan pengagregatan pada berbilang lajur, objek yang terhasil boleh menjadi Siri atau DataFrame bergantung pada bilangan lajur yang dikumpulkan.
Untuk mendapatkan DataFrame dengan semua lajur, gunakan as_index=False dalam fungsi kumpulan mengikut.
Untuk mengagregatkan lajur rentetan, anda boleh menggunakan senarai, tupel atau operasi gabungan.
Contohnya:
# Convert 'B' column values to a list for each group df1 = df.groupby('A')['B'].agg(list).reset_index() # Combine 'B' column values into a string with separator for each group df2 = df.groupby('A')['B'].agg(','.join).reset_index()
Untuk mengira nilai yang tidak hilang dalam setiap kumpulan, gunakan GroupBy.count(). Untuk mengira semua nilai, termasuk yang hilang, gunakan GroupBy.size().
Contohnya:
# Count non-missing values in 'C' column for each group df1 = df.groupby('A')['C'].count().reset_index(name='COUNT') # Count all values in 'A' column for each group df2 = df.groupby('A').size().reset_index(name='COUNT')
Anda boleh menambah lajur baharu yang mengandungi nilai agregat menggunakan kaedah transform(). Fungsi transform() menggunakan operasi yang ditentukan untuk setiap kumpulan dan mengembalikan objek baharu dengan saiz yang sama seperti yang asal.
Contohnya:
# Create a new 'C1' column with the sum of 'C' grouped by 'A' df['C1'] = df.groupby('A')['C'].transform('sum')
Atas ialah kandungan terperinci Bagaimana untuk Melakukan Pengagregatan Data dengan Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!