GroupBy-Ergebnisse in ein Wörterbuch mit Listen konvertieren
Um Daten aus einer Excel-Tabelle zu extrahieren und zu gruppieren, wird häufig GroupBy verwendet Funktion der Pandas-Bibliothek. Wenn die gewünschte Ausgabe jedoch ein Wörterbuch ist, in dem Schlüssel Gruppenwerten entsprechen und Werte Listen entsprechender Elemente sind, reicht der herkömmliche Ansatz möglicherweise nicht aus.
Um diese spezifische Anforderung zu erfüllen, besteht eine Lösung darin, „Apply and“ zu verwenden to_dict-Funktionen. Die Apply-Funktion ermöglicht die Anwendung einer Funktion auf jede Gruppe, in diesem Fall die Konvertierung von Spalte3 in eine Liste. Die Funktion to_dict wandelt das Ergebnis dann in ein Wörterbuch um. Der folgende Code demonstriert diesen Ansatz:
<code class="python">import pandas as pd excel = pd.read_excel(r"e:\test_data.xlsx", sheetname='mySheet', parse_cols'A,C') result = excel.groupby('Column1')['Column3'].apply(list).to_dict()</code>
Dieser Code generiert die gewünschte Ausgabe:
{0: [1], 1: [2, 3, 5], 2: [1, 2], 3: [4, 5], 4: [1], 5: [1, 2, 3]}
Alternativ besteht eine kompaktere Lösung darin, ein Wörterbuchverständnis zu verwenden:
<code class="python">result = {k: list(v) for k, v in excel.groupby('Column1')['Column3']}</code>
Dieser Ansatz erzeugt auch den gleichen gewünschten Output und sorgt für eine prägnante und effiziente Implementierung.
Das obige ist der detaillierte Inhalt vonWie konvertiere ich Pandas GroupBy-Ergebnisse in ein Wörterbuch mit Listen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!