Panda's: hoe bereken je het percentage van het totaal binnen een groep


U kunt de volgende syntaxis gebruiken om het percentage van een totaal binnen pandagroepen te berekenen:

 df[' values_var '] / df. groupby (' group_var ')[' values_var ']. transform (' sum ')

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: Bereken het percentage van het totaal binnen de groep

Stel dat we het volgende panda’s DataFrame hebben dat de punten weergeeft die zijn gescoord door basketbalspelers van verschillende teams:

 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

We kunnen de volgende syntaxis gebruiken om een nieuwe kolom in het DataFrame te maken die het percentage van het totaal aantal gescoorde punten weergeeft, gegroepeerd per team:

 #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

De kolom team_percent geeft het percentage van het totale aantal punten aan dat deze speler in zijn team heeft gescoord.

Spelers van Team A scoorden bijvoorbeeld in totaal 99 punten.

Dus de speler in de eerste rij van het DataFrame die 12 punten scoorde, scoorde in totaal 12/99 = 12,12% van het totale aantal punten van team A.

Op dezelfde manier scoorde de speler in de tweede rij van het DataFrame die 29 punten scoorde een totaal van 29/99 = 29,29% van het totale aantal punten van team A.

Enzovoort.

Let op : U kunt hier de volledige documentatie voor de GroupBy- functie vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:

Panda’s: hoe bereken je de cumulatieve som per groep
Panda’s: unieke waarden per groep tellen
Panda’s: hoe de modus per groep te berekenen
Panda’s: hoe de correlatie per groep te berekenen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert