无法按特定列进行分组,然后对它们运行聚合运算符。例如,如果有意义的话,需要按周和地区进行分组来计算拒收总数/交付总数吗?
另外,有没有办法过滤组中的Region?
DFrame.groupby('week_starting', 'Region').agg({"Rejects": "sum"} / {"deliveries": "sum"} )
答案 0 :(得分:0)
首先,过滤到该地区。然后,仅使用groupby
执行sum
,将总和应用于各列。在下一步中进行两列之间的划分。
DFrame_sub = DFrame.loc[DFrame['Region'] == 'MyRegion']
g = DFrame_sub.groupby('week_starting', 'Region').agg({'Rejects': 'sum' , 'Deliveries' : 'sum'})
g['RejectRate'] = g['Rejects'] / g['Deliveries']