Pandas: cara menggunakan groupby() dengan size()
Anda dapat menggunakan metode berikut dengan fungsi groupby() dan size() di panda untuk menghitung jumlah kemunculan per grup:
Metode 1: menghitung kejadian yang dikelompokkan berdasarkan variabel
df. groupby (' var1 '). size ()
Metode 2: Hitung kejadian yang dikelompokkan berdasarkan beberapa variabel
df. groupby ([' var1 ', ' var2 ']). size ()
Metode 3: Hitung kejadian yang dikelompokkan berdasarkan beberapa variabel dan diurutkan berdasarkan nomor
df. groupby ([' var1 ', ' var2 ']). size (). sort_values (ascending= False )
Contoh berikut menunjukkan cara menggunakan setiap metode dalam praktik dengan pandas DataFrame berikut:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'F', 'F', 'F', 'G', 'G', 'G', 'G', 'F'], ' points ': [15, 22, 24, 25, 20, 35, 34, 19, 14, 12]}) #view DataFrame print (df) team position points 0 AG 15 1 AG 22 2 AF 24 3 AF 25 4 AF 20 5 BG 35 6 BG 34 7 BG 19 8 BG 14 9 BF 12
Contoh 1: menghitung kejadian yang dikelompokkan berdasarkan variabel
Kode berikut menunjukkan cara menggunakan fungsi groupby() dan size() untuk menghitung kemunculan nilai di kolom tim :
#count occurrences of each value in team column
df. groupby (' team '). size ()
team
AT 5
B5
dtype: int64
Dari hasilnya terlihat nilai A dan B sama-sama muncul sebanyak 5 kali pada kolom tim .
Contoh 2: Hitung kejadian yang dikelompokkan berdasarkan beberapa variabel
Kode berikut menunjukkan cara menggunakan fungsi groupby() dan size() untuk menghitung kemunculan nilai untuk setiap kombinasi nilai di kolom tim dan posisi :
#count occurrences of values for each combination of team and position
df. groupby ([' team ', ' position ']). size ()
team position
AF3
G2
BF 1
G4
dtype: int64
Dari hasilnya kita dapat melihat:
- Tim A dan posisi F tampil sebanyak 3 kali.
- Tim A dan posisi G muncul dua kali .
Dan seterusnya.
Contoh 3: menghitung kejadian yang dikelompokkan berdasarkan beberapa variabel dan mengurutkannya
Kode berikut menunjukkan cara menggunakan fungsi groupby() dan size() untuk menghitung kemunculan nilai untuk setiap kombinasi nilai di kolom tim dan posisi , lalu mengurutkan berdasarkan hitungan:
#count occurrences for each combination of team and position and sort
df. groupby ([' team ', ' position ']). size (). sort_values (ascending= False )
team position
BG 4
AF3
G2
BF 1
dtype: int64
Outputnya menampilkan hitungan setiap kombinasi nilai tim dan posisi , diurutkan berdasarkan hitungan dalam urutan menurun.
Catatan : Untuk mengurutkan berdasarkan angka dalam urutan menaik, cukup hapus ascending=False dalam fungsi sort_values() .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:
Cara menghitung nilai unik menggunakan Pandas GroupBy
Cara menerapkan fungsi ke Pandas Groupby
Cara Membuat Plot Batang dari Pandas GroupBy