Panda's: hoe u de eerste n rijen per groep kunt krijgen
U kunt de volgende basissyntaxis gebruiken om de eerste N rijen per groep in een Panda DataFrame op te halen:
df. groupby (' group_column '). head ( 2 ). reset_index (drop= True )
Deze specifieke syntaxis retourneert de eerste twee regels per groep.
Wijzig eenvoudigweg de waarde in de functie head() om een ander aantal bovenste rijen te retourneren.
De volgende voorbeelden laten zien hoe u deze syntaxis kunt gebruiken met de volgende panda’s DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'G', 'F', 'F', 'G', 'G', 'F', 'F', 'F'], ' points ': [5, 7, 7, 9, 12, 9, 9, 4, 7, 7]}) #view DataFrame print (df) team position points 0 AG 5 1 AG 7 2 AG 7 3 AF 9 4AF 12 5 BG 9 6 BG 9 7 BF 4 8 BF 7 9 BF 7
Voorbeeld 1: Haal de eerste N rijen op, gegroepeerd op een kolom
De volgende code laat zien hoe u de eerste twee rijen retourneert, gegroepeerd op de teamvariabele :
#get top 2 rows grouped by team
df. groupby (' team '). head ( 2 ). reset_index (drop= True )
team position points
0 A G 5
1 A G 7
2 B G 9
3 B G 9
De uitvoer toont de eerste twee regels, gegroepeerd op teamvariabele .
Voorbeeld 2: Haal de eerste N rijen op, gegroepeerd op meerdere kolommen
De volgende code laat zien hoe u de eerste twee rijen retourneert, gegroepeerd op team- en positievariabelen :
#get top 2 rows grouped by team and position
df. groupby ([' team ', ' position ']). head ( 2 ). reset_index (drop= True )
team position points
0 A G 5
1 A G 7
2 A F 9
3 A F 12
4 B G 9
5 B G 9
6 B F 4
7 B F 7
De uitvoer toont de eerste twee regels, gegroepeerd op team- en positievariabelen .
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:
Panda’s: unieke waarden in een kolom vinden
Panda’s: hoe vind je unieke waarden in meerdere kolommen?
Panda’s: hoe u exemplaren met een specifieke waarde in een kolom kunt tellen