DataFrame-Zeilen in Listen in Pandas GroupBy gruppieren
Viele Datensätze enthalten redundante Informationen über Zeilen hinweg. Um aussagekräftige Erkenntnisse zu gewinnen, ist es oft notwendig, Zeilen basierend auf einem gemeinsamen Attribut zu gruppieren. Dies ermöglicht die Aggregation und Bearbeitung von Daten innerhalb jeder Gruppe. In diesem Artikel erfahren Sie, wie Sie Datenrahmenzeilen in Pandas Groupby in Listen gruppieren.
Stellen Sie sich einen Datenrahmen mit zwei Spalten vor, „a“ und „b“:
a b A 1 A 2 B 5 B 5 B 4 C 6
Das Ziel besteht darin, die Zeilen nach der ersten Spalte ('a') zu gruppieren und eine Liste der Werte in der zweiten Spalte ('b') zu erstellen. für jede Gruppe. Die gewünschte Ausgabe ist:
A [1,2] B [5,5,4] C [6]
Um dies zu erreichen, können wir die Groupby- und Apply-Funktionen von Pandas verwenden. Die Groupby-Funktion gruppiert die Zeilen nach der angegebenen Spalte, während die Apply-Funktion es uns ermöglicht, eine Operation für jede Gruppe durchzuführen. In diesem Fall wenden wir die Listenfunktion an, um eine Werteliste für jede Gruppe zu erstellen.
df.groupby('a')['b'].apply(list)
Dieser Code gibt ein Series-Objekt zurück, das die Wertelisten für jede Gruppe enthält:
a A [1, 2] B [5, 5, 4] C [6] Name: b, dtype: object
Um einen neuen Datenrahmen mit den gruppierten Listen zu erstellen, können wir die Funktion „reset_index“ verwenden, um das Serienobjekt in einen neuen Datenrahmen umzuwandeln Benennen Sie die Spalte mit den Listen um:
df1 = df.groupby('a')['b'].apply(list).reset_index(name='new')
Der resultierende Datenrahmen sieht folgendermaßen aus:
a new 0 A [1, 2] 1 B [5, 5, 4] 2 C [6]
Das obige ist der detaillierte Inhalt vonWie kann ich DataFrame-Zeilen mithilfe von Pandas Groupby in Listen gruppieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!