【发布时间】:2019-02-28 02:51:52
【问题描述】:
我有一个名为 GradeGroup 的 Groupby 对象。这是一个多索引分组,按“Grade”,然后按“HeatNumber”。数据框中有一列“准时”,我正在显示该列的最大值,如下所示:
GradeGroup.Ontime.max()
Grade HeatNumber
150HP 19258 45.8
19259 45.3
19260 35.6
19280 46.0
19281 50.0
19282 46.1
19283 39.5
A100C 19187 47.0
19243 39.8
19244 40.5
19245 37.1
A100X 19261 50.7
LOWO2A100 19215 42.0
19216 40.5
19217 38.4
19237 44.8
19238 43.7
19239 42.7
19240 42.5
19241 45.4
19262 43.4
19263 42.9
19264 43.5
如何获得“准时”最大值但每个等级的平均值,以便 150HP 等级的“准时”平均值(最大值)为 (45.8+45.3+35.6+46.0+50.0+46.1+39.5) /7 或 44.0。我正在寻找这样的东西:
Grade
150HP 44.0
A100C 41.1
A100X 50.7
LOWO2A100 42.7
【问题讨论】:
-
你能提供一个minimal reproducible example吗?从输出中构建数据框很乏味。
-
df.groupby(['Grade','HeatNumber']).agg({'Ontime': 'max'}).mean()
标签: python pandas aggregate pandas-groupby