Panda's: rijen combineren met dezelfde kolomwaarden


U kunt de volgende basissyntaxis gebruiken om rijen met dezelfde kolomwaarden te combineren in een pandas DataFrame:

 #define how to aggregate various fields
agg_functions = {' field1 ': ' first ', ' field2 ': ' sum ', ' field ': ' sum '}

#create new DataFrame by combining rows with same id values
df_new = df. groupby (df[' id ']). aggregate (agg_functions)

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

Voorbeeld: Combineer rijen met dezelfde kolomwaarden in Panda’s

Stel dat we het volgende panda’s DataFrame hebben dat informatie bevat over de verkopen en retouren van verschillende medewerkers van een bedrijf:

 import pandas as pd

#create dataFrame
df = pd. DataFrame ({' id ': [101, 101, 102, 103, 103, 103],
                   ' employee ': ['Dan', 'Dan', 'Rick', 'Ken', 'Ken', 'Ken'],
                   ' sales ': [4, 1, 3, 2, 5, 3],
                   ' returns ': [1, 2, 2, 1, 3, 2]})

#view DataFrame
print (df)

    id employee sales returns
0 101 Dan 4 1
1 101 Dan 1 2
2 102 Rick 3 2
3 103 Ken 2 1
4 103 Ken 5 3
5 103 Ken 3 2

We kunnen de volgende syntaxis gebruiken om rijen met dezelfde waarde in de id- kolom te combineren en vervolgens de resterende kolommen samen te voegen:

 #define how to aggregate various fields
agg_functions = {' employee ': ' first ', ' sales ': ' sum ', ' returns ': ' sum '}

#create new DataFrame by combining rows with same id values
df_new = df. groupby (df[' id ']). aggregate (agg_functions)

#view new DataFrame
print (df_new)

    employee sales returns
id                          
101 Dan 5 3
102 Rick 3 2
103 Ken 10 6

Het nieuwe DataFrame combineerde alle rijen uit het vorige DataFrame die dezelfde waarde hadden in de id- kolom, en berekende vervolgens de som van de waarden in de verkoop- en retourkolommen .

Opmerking : raadpleeg de Pandas-documentatie voor een volledige lijst met aggregaties die beschikbaar zijn voor gebruik met de GroupBy()- functie.

Aanvullende bronnen

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

Panda’s: hoe u het verschil tussen twee kolommen kunt vinden
Panda’s: hoe je het verschil tussen twee lijnen kunt vinden
Panda’s: kolommen op naam sorteren

Einen Kommentar hinzufügen

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