Pandas : cara menghitung nilai pada kolom dengan syarat
Anda dapat menggunakan metode berikut untuk menghitung jumlah nilai pada kolom Pandas DataFrame dengan kondisi tertentu:
Metode 1: Hitung nilai dalam kolom dengan syarat
len(df[df[' col1 ']==' value1 '])
Metode 2: Hitung nilai dalam beberapa kolom dengan ketentuan
len(df[(df[' col1 ']==' value1 ') & (df[' col2 ']==' value2 ')])
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', 'B', 'B', 'B', 'B'],
' pos ': ['Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'],
' points ': [18, 22, 19, 14, 14, 11, 20, 28]})
#view DataFrame
print (df)
team pos points
0 A Gu 18
1 A Fo 22
2 A Fo 19
3 A Fo 14
4 B Gu 14
5 B Gu 11
6 B Fo 20
7 B Fo 28
Contoh 1: Hitung nilai dalam kolom dengan syarat
Kode berikut menunjukkan cara menghitung banyaknya nilai pada kolom tim yang nilainya sama dengan “A”:
#count number of values in team column where value is equal to 'A' len(df[df[' team ']==' A ']) 4
Terlihat pada kolom tim terdapat 4 nilai yang nilainya sama dengan “A”.
Contoh 2: Hitung nilai dalam beberapa kolom dengan ketentuan
Kode berikut menunjukkan cara menghitung jumlah baris di DataFrame dengan kolom tim sama dengan “B” dan kolom pos sama dengan “Gu”:
#count rows where team is 'B' and pos is 'Gu' len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ')]) 2
Kita dapat melihat bahwa ada 2 baris di DataFrame yang memenuhi kedua kondisi ini.
Kita dapat menggunakan sintaks serupa untuk menghitung jumlah baris yang memenuhi jumlah kondisi yang diinginkan.
Misalnya, kode berikut menunjukkan cara menghitung jumlah baris yang memenuhi tiga kondisi:
- tim sama dengan ‘B’
- pos sama dengan ‘Gu’
- poin lebih besar dari 12
#count rows where team is 'B' and pos is 'Gu' and points > 15 len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ') & (df[' points ']> 12 )]) 1
Kita dapat melihat bahwa satu baris DataFrame memenuhi ketiga kondisi tersebut.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:
Pandas: cara mencari perbedaan antara dua garis
Pandas: cara menghapus baris yang berisi string tertentu
Pandas: Cara menghapus baris duplikat di DataFrame