Panda's: tekenreeksen samenvoegen met groupby
U kunt de volgende basissyntaxis gebruiken om tekenreeksen uit GroupBy in panda’s samen te voegen:
df. groupby ([' group_var '], as_index= False ). agg ({' string_var ': ' ' .join })
Deze specifieke formule groepeert de rijen op de group_var- kolom en voegt vervolgens de tekenreeksen in de string_var- kolom samen.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: tekenreeksen samenvoegen met GroupBy
Stel dat we de volgende panda’s DataFrame hebben:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
' quarter ': [1, 1, 2, 2, 1, 1, 2, 2],
' employee ': ['Andy', 'Bob', 'Chad', 'Diane',
'Elana', 'Frank', 'George', 'Hank']})
#view DataFrame
print (df)
We kunnen de volgende syntaxis gebruiken om de rijen van het DataFrame te groeperen op winkel en kwartaal en vervolgens de tekenreeksen in de werknemerskolom samen te voegen:
#group by store and quarter, then concatenate employee strings
df. groupby ([' store ', ' quarter '], as_index= False ). agg ({' employee ':''. join })
store quarter employee
0 To 1 Andy Bob
1 A 2 Chad Diane
2 B 1 Elana Frank
3 B 2 George Hank
Het resultaat is een DataFrame gegroepeerd op winkel en kwartaal , waarbij de tekenreeksen van de werknemerskolommen zijn samengevoegd met een spatie.
We kunnen de tekenreeksen ook samenvoegen met een ander scheidingsteken, zoals het & -symbool:
#group by store and quarter, then concatenate employee strings
df. groupby ([' store ', ' quarter '], as_index= False ). agg ({' employee ':' & '. join })
store quarter employee
0 To 1 Andy & Bob
1 A 2 Chad & Diane
2 B 1 Elana & Frank
3 B 2 George & Hank
Merk op dat de strings in de werknemerskolom nu gescheiden zijn door het & -symbool.
Opmerking : u kunt hier de volledige documentatie van de GroupBy-bewerking in panda’s 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 correlatie per groep te berekenen