Data yang tersedia pada umumnya memiliki kolom yang dapat dikelompokkan berdasarkan kategorinya. Pandas DataFrame menyediakan fungsi yang dapat digunakan untuk tujuan tersebut yaitu group by. Perintah ini serupa dengan perintah group by yang terdapat pada SQL. Misalkan, pada data terdapat nama kota maka kolomtersebut dapat dijadikan kategori untuk tampilan pengelompokkan data. Group by pada pandas dataframe dapat digabungkan dengan perintah lain untuk melakukan beberapa perhitungan. Perhitungan yang dapat dilakukan pada proses pengelompokkan data adalah mean, sum dan count.
Mean
Perintah mean digunakan untuk menghitung rata-rata dari keseluruhan data. Contoh perintah yang digunakan untuk mencari rata-rata seperti berikut ini.
df.groupby('Type 1').mean().head()
Sum
Perintah sum digunakan untuk menghitung jumlah dari keseluruhan nilai data. Contoh perintah yang digunakan untuk menghitung jumlah seperti berikut ini.
df.groupby('Type 1').sum().head()
Count
Perintah count digunakan untuk menghitung jumlah dari kemunculan data. Perbedaan dengan perintah sum adalah jika perintah sum digunakan untuk menjumlahkan nilai dari data sedangkan perintah count digunakan untuk menghitung jumlah kemunculan data. Contoh perintah yang digunakan untuk menghitung jumlah seperti berikut ini.
df.groupby(['Type 1']).count().head()
Contoh Kode Program dengan Group By Pandas DataFrame
Pada bagian ini akan diberikan mengenai perintah perhitungan yang telah dijelaskan sebelumnya.
Memuat data ke Dataframe Pandas
import pandas as pd
df = pd.read_csv('https://raw.githubusercontent.com/Onestringlab/notebook/main/pokemon_data.csv')
df.head()
Menampilkan semua rata-rata data yang dikelompokkan berdasarkan Type 1
df.groupby('Type 1').mean().head()
df.groupby('Type 1').mean().sort_values('Attack', ascending=False).head()
Menampilkan semua jumlah data yang dikelompokkan berdasarkan Type 1
df.groupby('Type 1').sum().head()
df.groupby('Type 1').sum().sort_values('Attack', ascending=False).head()
Menampilkan jumlah data yang dikelompokkan berdasarkan Type 1
df['Count'] = 1
df.head()
df.groupby(['Type 1']).count().head()
df.groupby(['Type 1', 'Type 2']).count()[['Count']]
Kesimpulan Penggunaan Perintah Group By Pandas DataFrame
Perintah group by berfungsi serupa dengan perintah group by pada SQL. Selanjutnya, perintah ini dapat digabungkan dengan beberapa perintah lain untuk proses perhitungan yang diperlukan yaitu mean, sum dan count. Untuk artikel lain terkait dengan data science silahkan lihat kumpulan artikelnya disini.