Cara menghitung rata-rata bersyarat di pandas (dengan contoh)
Anda dapat menggunakan sintaks berikut untuk menghitung rata-rata bersyarat di panda:
df. loc [df[' team '] == ' A ', ' points ']. mean ()
Ini menghitung rata-rata kolom “poin” untuk setiap baris di DataFrame di mana kolom “tim” sama dengan “A”.
Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya dengan pandas DataFrame berikut:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
' points ': [99, 90, 93, 86, 88, 82],
' assists ': [33, 28, 31, 39, 34, 30]})
#view DataFrame
print (df)
team points assists
0 to 99 33
1 A 90 28
2 A 93 31
3 B 86 39
4 B 88 34
5 B 82 30
Contoh 1: Hitung Rata-Rata Bersyarat untuk Variabel Kategorikal
Kode berikut menunjukkan cara menghitung rata-rata kolom “poin” hanya untuk baris di DataFrame di mana kolom “tim” memiliki nilai “A”.
#calculate mean of 'points' column for rows where team equals 'A'
df. loc [df[' team '] == ' A ', ' points ']. mean ()
94.0
Nilai rata-rata pada kolom “poin” untuk baris dimana “tim” sama dengan “A” adalah 94 .
Kita dapat memeriksanya secara manual dengan merata-ratakan nilai poin hanya untuk garis di mana “tim” sama dengan “A”:
- Poin rata-rata: (99 + 90 + 93) / 3 = 94
Contoh 2: Hitung Rata-Rata Bersyarat untuk Variabel Numerik
Kode berikut menunjukkan cara menghitung rata-rata kolom “bantuan” hanya untuk baris di DataFrame yang kolom “poin” memiliki nilai lebih besar atau sama dengan 90.
#calculate mean of 'assists' column for rows where 'points' >= 90
df. loc [df[' points '] >= 90 , ' assists ']. mean ()
30.666666666666668
Nilai rata-rata pada kolom “bantuan” untuk baris yang “poinnya” lebih besar atau sama dengan 90 adalah 30.66667 .
Kita dapat memeriksanya secara manual dengan merata-ratakan nilai poin hanya untuk garis di mana “tim” sama dengan “A”:
- Rata-rata assist: (33 + 28 + 31) / 3 = 30,66667
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di panda:
Cara menghitung rata-rata kolom di Pandas
Cara Menghitung Rata-Rata Pergerakan di Pandas
Cara mengisi nilai NaN dengan mean di pandas