Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich mit Pandas GroupBy mehrere Aggregationsfunktionen auf dieselbe Spalte anwenden?

Wie kann ich mit Pandas GroupBy mehrere Aggregationsfunktionen auf dieselbe Spalte anwenden?

Patricia Arquette
Freigeben: 2024-12-08 11:42:12
Original
455 Leute haben es durchsucht

How Can I Apply Multiple Aggregation Functions to the Same Column Using pandas GroupBy?

Aggregation mit mehreren Funktionen in derselben Spalte mithilfe von GroupBy

In der Pandas-Bibliothek von Python bietet die Funktion GroupBy.agg() eine praktische Möglichkeit um Aggregationsfunktionen auf gruppierte Daten anzuwenden. Es ist jedoch zu beachten, dass die Anwendung mehrerer Funktionen auf dieselbe Spalte schwierig sein kann.

Auf den ersten Blick mag es intuitiv erscheinen, die folgende Syntax zu verwenden:

df.groupby("dummy").agg({"returns": f1, "returns": f2})
Nach dem Login kopieren

Dieser Ansatz schlägt jedoch fehl zum Duplizieren von Schlüsseln, die in Python nicht zulässig sind. Stattdessen bietet Pandas mehrere Methoden zur Durchführung solcher Aggregationen an:

Methode 1: Liste von Funktionen

Funktionen können als Liste übergeben werden:

df.groupby("dummy").agg({"returns": [np.mean, np.sum]})
Nach dem Login kopieren

Methode 2: Wörterbuch der Funktionen

Funktionen können übergeben werden als Wörterbuch mit Schlüsseln, die den Spaltennamen darstellen, und Werten, die eine Liste von Funktionen darstellen:

df.groupby("dummy").agg({"returns": {"Mean": np.mean, "Sum": np.sum}})
Nach dem Login kopieren

Methode 3: Aktuelle Aktualisierung (Stand 20.06.2022)

In neueren Versionen von Pandas wird die folgende Syntax bevorzugt:

df.groupby('dummy').agg(
    Mean=('returns', np.mean),
    Sum=('returns', np.sum))
Nach dem Login kopieren

Diese Syntax funktioniert nicht nur nahtlos, sondern auch Bietet mehr Klarheit und Flexibilität bei der Angabe der Aggregationsfunktionen und Spaltennamen.

Das obige ist der detaillierte Inhalt vonWie kann ich mit Pandas GroupBy mehrere Aggregationsfunktionen auf dieselbe Spalte anwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage