【问题标题】:Dataframe group by numerical column and then combine with the original dataframe [duplicate]数据框按数字列分组,然后与原始数据框组合[重复]
【发布时间】:2020-10-08 13:52:25
【问题描述】:

我有一个 pandas 数据框,我想先按其中一列分组,然后计算该列每组的计数平均值。然后,我想将这个分组的实体与原始数据框结合起来。

一个例子:

    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 上进行内部连接,但是,我觉得它可以以更清洁/单线的方式完成。有没有可能做得比这更好?

【问题讨论】:

    标签: pandas pandas-groupby


    【解决方案1】:

    这是transform

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-18
      • 1970-01-01
      • 1970-01-01
      • 2019-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-29
      相关资源
      最近更新 更多