Pandas: cara menggunakan groupby dengan banyak agregasi
Anda dapat menggunakan sintaks dasar berikut untuk menggunakan groupby dengan beberapa agregasi di panda:
df. groupby (' team '). agg ( mean_points=(' points ', np. mean ), sum_points=(' points ', np. sum ), std_points=(' points ', np. std ))
Rumus khusus ini mengelompokkan baris DataFrame berdasarkan variabel yang disebut team dan kemudian menghitung beberapa ringkasan statistik untuk variabel yang disebut points .
Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.
Contoh: Menggunakan Groupby dengan Banyak Agregasi di Pandas
Misalkan kita memiliki pandas DataFrame berikut yang berisi informasi tentang berbagai pemain bola basket:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Mavs', 'Heat', 'Heat', 'Heat'], ' points ': [18, 22, 19, 14, 14, 11], ' assists ': [5, 7, 7, 9, 12, 9]}) #view DataFrame print (df) team points assists 0 Mavs 18 5 1 Mavs 22 7 2 Mavs 19 7 3 Heat 14 9 4 Heat 14 12 5 Heat 11 9
Kita dapat menggunakan sintaks berikut untuk mengelompokkan baris DataFrame berdasarkan team , lalu menghitung rata-rata, jumlah, dan deviasi standar poin untuk setiap tim:
import numpy as np #group by team and calculate mean, sum, and standard deviation of points df. groupby (' team '). agg ( mean_points=(' points ', np. mean ), sum_points=(' points ', np. sum ), std_points=(' points ', np. std )) mean_points sum_points std_points team Heat 13.000000 39 1.732051 Mavs 19.666667 59 2.081666
Hasilnya menampilkan mean, jumlah, dan deviasi standar variabel poin untuk setiap tim .
Anda dapat menggunakan sintaks serupa untuk melakukan pengelompokan dan menghitung agregasi sebanyak yang Anda inginkan.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas panda umum lainnya:
Cara menghitung nilai unik menggunakan Pandas GroupBy
Cara menerapkan fungsi ke Pandas Groupby
Cara Membuat Plot Batang dari Pandas GroupBy