Dalam analisis data terkadang kita perlu menjumlahkan data berdasarkan kategori. Bukan hanya menjumlahkan, mungkin juga kita perlu menghitung nilai rata-rata ataupun jumlah data untuk masing-masing kategori.
Bagi pemula mungkin pekerjaan ini bukan sesuatu yang mudah. Disini saya akan memberikan beberapa contoh yang dapat dipelajari tentang cara melakukan perhitungan ataupun menjumlahkan data berdasarkan kategori di Python.
Sebelumnya saya akan membuat dataframe yang terdiri dari dua kolom bertipe numerik, yaitu kolom ‘kategori’ dan ‘jumlah’ seperti di bawah ini.
import pandas as pd
import numpy as np
import random
data = {'kategori': [random.choice(range(1, 4)) for i in range(10)],
'jumlah': [random.choice(range(100, 200)) for i in range(10)]}
df = pd.DataFrame(data)
df
Baca Juga: Menjadikan Kolom Sebagai Indeks Pada Dataframe Pandas
Output:
Menghitung jumlah nilai dari kategori tertentu
Setelah kita membuat dataframe, misalnya kita ingin menghitung jumlah nilai dari kategori tertentu yang tentunya dapat menggunakan function yang sudah tersedia di Python.
Untuk menghitung ada berapa jumlah datanya, kita dapat menggunakan function count()
, sedangkan jika ingin mengetahui jumlah perhitungan dari data tersebut dapat menggunakan function sum()
. Sementara itu, untuk mengetahui nilai rata-rata, kita dapat menggunakan function mean()
.
Misalnya dalam contoh ini kita ingin melihat jumlah, nilai rata-rata, dan juga ada berapa data yang berkategori ‘2’.
Kode Python untuk menjumlahkan nilai pada kolom ‘jumlah’ yang memiliki kategori ‘2’.
df[df['kategori'] == 2]['jumlah'].sum()
Kode Python untuk menghitung nilai rata-rata dari kolom ‘jumlah’ yang memiliki kategori ‘2’.
df[df['kategori'] == 2]['jumlah'].mean()
Baca Juga: 5 Cara Menambahkan Header Pada Dataframe Pandas
Kode Python untuk mengetahui ada berapa data yang berkategori ‘2’.
df[df['kategori'] == 2]['jumlah'].count()
Output dari ketiga kode di atas sebagai berikut.
Menghitung jumlah nilai dari setiap kategori
Selain menentukan langsung kategori apa yang ingin dihitung, kita juga dapat menghitung jumlah nilai, nilai rata-rata, dan jumlah data dari setiap kategori menggunakan function groupby()
. Perhatikan kode di bawah ini.
Kode Python untuk menjumlahkan setiap nilai pada kolom ‘jumlah’ berdasarkan kategori.
df.groupby('kategori')['jumlah'].sum()
Baca Juga: Mengecek Keberadaan Item dengan any() di Python
Kode Python untuk menghitung nilai rata-rata dari kolom ‘jumlah’ berdasarkan kategori.
df.groupby('kategori')['jumlah'].mean()
Kode Python untuk menghitung jumlah data pada kolom ‘jumlah’ berdasarkan kategori.
df.groupby('kategori')['jumlah'].count()
Outputnya seperti di bawah ini.
Semoga bermanfaat!
Jika Anda yang sedang belajar data science atau mengolah data dengan bahasa pemrograman Python namun masih suka bingung menulis kode Python-nya, kami telah menyusun Paket E-modul Data Science dengan Python yang didesain khusus untuk pemula dengan penjelasan bahasa Indonesia yang lengkap untuk setiap blok kode-nya. Dapatkan sekarang juga dengan klik di sini!