Panda's: beschrijven() gebruiken per groep
U kunt de functie beschrijven() gebruiken om beschrijvende statistieken te genereren voor variabelen in een pandas DataFrame.
U kunt de volgende basissyntaxis gebruiken om de functie beschrijven() te gebruiken met de functie groupby() in panda’s:
df. groupby (' group_var ')[' values_var ']. describe ()
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: gebruik beschrijven() per groep in Panda’s
Stel dat we het volgende panda’s DataFrame hebben dat informatie bevat over basketbalspelers van twee verschillende teams:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
' points ': [8, 12, 14, 14, 15, 22, 27, 24],
' assists ':[2, 2, 3, 5, 7, 6, 8, 12]})
#view DataFrame
print (df)
team points assists
0 to 8 2
1 to 12 2
2 to 14 3
3 to 14 5
4 B 15 7
5 B 22 6
6 B 27 8
7 B 24 12
We kunnen de functie beschrijven() gebruiken met de functie groupby() om de waarden in de puntenkolom voor elk team samen te vatten:
#summarize points by team
df. groupby (' team ')[' points ']. describe ()
count mean std min 25% 50% 75% max
team
A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0
B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0
Uit het resultaat kunnen we de volgende waarden zien voor de puntenvariabele voor elk team:
- aantal (aantal observaties)
- gemiddeld (gemiddelde puntwaarde)
- std (standaardafwijking van puntwaarden)
- min (minimale puntwaarde)
- 25 % (25e percentiel van punten)
- 50 % (50e percentiel (dwz mediaan) van punten)
- 75 % (75e percentiel van punten)
- max (maximale puntwaarde)
Als u wilt dat de resultaten worden weergegeven in DataFrame-indeling, kunt u het argument reset_index() gebruiken:
#summarize points by team df. groupby (' team ')[' points ']. describe (). reset_index () team count mean std min 25% 50% 75% max 0 A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0 1 B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0
De teamvariabele is nu een kolom in het DataFrame en de indexwaarden zijn 0 en 1.
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 correlatie per groep te berekenen