Pandalar: bir grup içindeki toplamın yüzdesi nasıl hesaplanır?
Panda grupları içindeki toplamın yüzdesini hesaplamak için aşağıdaki sözdizimini kullanabilirsiniz:
df[' values_var '] / df. groupby (' group_var ')[' values_var ']. transform (' sum ')
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: Grup içindeki toplamın yüzdesini hesaplama
Farklı takımlardaki basketbol oyuncularının attığı sayıları gösteren aşağıdaki panda DataFrame’e sahip olduğumuzu varsayalım:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
' points ': [12, 29, 34, 14, 10, 11, 7, 36, 34, 22]})
#view DataFrame
print (df)
team points
0 to 12
1 to 29
2 to 34
3 to 14
4 to 10
5 B 11
6 B 7
7 B 36
8 B 34
9 B 22
DataFrame’de, takıma göre gruplandırılmış olarak atılan toplam puanların yüzdesini görüntüleyen yeni bir sütun oluşturmak için aşağıdaki sözdizimini kullanabiliriz:
#calculate percentage of total points scored grouped by team
df[' team_percent '] = df[' points '] / df. groupby (' team ')[' points ']. transform (' sum ')
#view updated DataFrame
print (df)
team points team_percent
0 A 12 0.121212
1 A 29 0.292929
2 A 34 0.343434
3 A 14 0.141414
4 A 10 0.101010
5 B 11 0.100000
6 B 7 0.063636
7 B 36 0.327273
8 B 34 0.309091
9 B 22 0.200000
Team_percent sütunu, bu oyuncunun kendi takımında attığı toplam puanların yüzdesini gösterir.
Örneğin A Takımı oyuncuları toplam 99 puan topladı.
Yani DataFrame’in ilk satırında 12 puan alan oyuncu toplam 12/99 = A Takımının toplam puanının %12,12’sini elde etti.
Benzer şekilde DataFrame’in ikinci sırasında yer alan ve 29 puan alan oyuncu toplamda 29/99 = A Takımının toplam puanının %29,29’unu elde etti.
Ve benzeri.
Not : GroupBy işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde pandalarda diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:
Pandalar: Grup başına kümülatif toplam nasıl hesaplanır?
Pandalar: benzersiz değerlerin gruba göre nasıl sayılacağı
Pandalar: gruba göre mod nasıl hesaplanır
Pandalar: gruba göre korelasyon nasıl hesaplanır