Durchführen gruppierter Aggregationen und Durchschnittsberechnungen
Betrachten Sie den folgenden DataFrame mit Daten zu Cluster, Organisation und Zeit:
cluster org time 0 a 8 1 a 6 2 h 34 3 c 23 4 d 74 5 w 6
Das Ziel besteht darin, die durchschnittliche Zeit pro Organisation innerhalb jedes Clusters zu berechnen. Das erwartete Ergebnis sollte wie folgt aussehen:
cluster mean(time) 1 15 #=((8 + 6) / 2 + 23) / 2 2 54 #=(74 + 34) / 2 3 6
Lösung mit Double GroupBy- und Mittelwertberechnungen:
Um dies zu erreichen, nutzen Sie die Leistung der Groupby-Funktion von Pandas:
cluster_org_time = df.groupby(['cluster', 'org'], as_index=False).mean() result = cluster_org_time.groupby('cluster')['time'].mean()
Alternative Lösung für gruppierte Gruppendurchschnitte:
Nur für den Durchschnitt von Clustergruppen gruppieren Sie einfach nach ['cluster'] und berechnen Sie den Mittelwert mit „mean()“.
cluster_mean_time = df.groupby(['cluster']).mean()
Zusätzliche Option für GroupBy mit org und Mittelwertberechnung:
Alternativ können Sie gruppieren durch ['cluster', 'org'] und berechnen Sie direkt den Mittelwert:
cluster_org_mean_time = df.groupby(['cluster', 'org']).mean()
Das obige ist der detaillierte Inhalt vonWie berechnet man die durchschnittliche Zeit pro Organisation innerhalb jedes Clusters in einem Pandas DataFrame?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!