数据框按数值列分组,然后与原始数据框组合

时间:2020-06-18 13:29:27

标签: pandas pandas-groupby

我有一个熊猫数据框,我想首先对其中一列进行分组,然后计算该列各组的计数平均值。然后,我想将这个分组的实体与原始数据框结合起来。

一个例子:

    df = 
    a     b    orders
    1     3    5         
    5     8    10
    2     3    6

沿b列分组并取订单均值

  groupby_df = 

   b      mean(orders)
   3        5.5
   8        10

最终结果:

   df = 
    a     b    orders.     mean(orders)
    1     3    5              5.5
    5     8    10             10
    2     3    6              5.5

我知道我可以在b上进行分组,然后在b上进行内部联接,但是,我觉得可以用更加简洁/单线的方式来完成。有可能做得更好吗?

1 个答案:

答案 0 :(得分:1)

这是transform

df['mean']=df.groupby('b').orders.transform('mean')