Heim >Backend-Entwicklung >Python-Tutorial >Wie berechnet man Durchschnittswerte mit mehreren Gruppierungen in Pandas?

Wie berechnet man Durchschnittswerte mit mehreren Gruppierungen in Pandas?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-20 01:45:01351Durchsuche

How to Calculate Average Values with Multiple Groupings in Pandas?

Gruppierte Aggregation mit mehreren Gruppierungen und Durchschnitt

In Pandas ist die Durchführung von Aggregationen für nach mehreren Ebenen gruppierte Daten ein üblicher Vorgang. Betrachten Sie den folgenden DataFrame:

   cluster  org      time
   1      a       8
   1      a       6
   2      h       34
   1      c       23
   2      d       74
   3      w       6 

Eine häufige Aufgabe besteht darin, den Durchschnitt einer bestimmten Spalte, z. B. „Zeit“, pro Gruppe zu berechnen, die durch mehrere Variablen definiert ist, z. B. „Cluster“ und „Organisation“.

Lösung 1: Mittelwert nur für Clustergruppierungen

Zur Berechnung des Mittelwerts der „Zeit“, gruppiert nach Nur „Cluster“, Sie können den folgenden Code verwenden:

df.groupby(['cluster']).mean()

Ergebnis:

              time
cluster
1        12.333333
2        54.000000
3         6.000000

Lösung 2: Mittelwert für eine Kombination von Gruppierungen

Wenn Sie den Mittelwert der „Zeit“ für jede Kombination aus „Cluster“ und „Organisation“ berechnen möchten, Sie können Folgendes verwenden:

df.groupby(['cluster', 'org']).mean()

Ergebnis:

               time
cluster org
1       a    438886
        c        23
2       d      9874
        h        34
3       w         6

Lösung 3: Verschachtelter Mittelwert für Gruppierungen

Zu Führen Sie einen verschachtelten Mittelwert durch, indem Sie zunächst den Mittelwert für die Kombination aus „Cluster“ und „Organisation“ und dann den Mittelwert für „Cluster“ bilden. Gruppen, verwenden Sie:

(df.groupby(['cluster', 'org'], as_index=False).mean()
            .groupby('cluster')['time'].mean())

Ergebnis:

cluster  mean(time)
1          15 #=((8 + 6) / 2 + 23) / 2
2          54 #=(74 + 34) / 2
3           6

Das obige ist der detaillierte Inhalt vonWie berechnet man Durchschnittswerte mit mehreren Gruppierungen in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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