Ich habe einen Datenrahmen wie diesen:
cluster org time
1 a 8
1 a 6
2 h 34
1 c 23
2 d 74
3 w 6
Ich möchte den Durchschnitt der Zeit pro Organisation und Cluster berechnen.
Erwartetes Ergebnis:
cluster mean(time)
1 15 ((8+6)/2+23)/2
2 54 (74+34)/2
3 6
Ich weiß nicht, wie es in Pandas geht, kann jemand helfen?
df.groupby(['org','cluster']).mean()
? Dies ist nicht so aussagekräftig für Ihren Datensatz im Gegensatz dazu:df.groupby(['cluster','org']).mean()
Antworten:
Wenn Sie zuerst den Mittelwert für die Kombination von
['cluster', 'org']
und dann den Mittelwert fürcluster
Gruppen ermitteln möchten , können Sie Folgendes verwenden:Wenn Sie nur den Mittelwert von
cluster
Gruppen möchten , können Sie Folgendes verwenden:Sie können auch verwenden ,
groupby
auf['cluster', 'org']
und verwenden Sie dannmean()
:quelle
Ich würde dies einfach tun, was buchstäblich Ihrer gewünschten Logik folgt:
quelle