【问题标题】:pandas groupby with sum and unique values具有总和和唯一值的熊猫 groupby
【发布时间】:2018-07-19 05:59:25
【问题描述】:

我有以下数据框

amount = pd.Series(np.random.randn(10),name='amount')
df = pd.DataFrame({'amount': amount,'price':50})
df['month'] = ['jan','feb','mar','apr','apr','apr','may','may','jun','jun']
df.set_index('month')

我想按“月”分组,对“金额”列求和,然后在每个月旁边显示价格。我们可以假设每个月的价格是统一的,因此例如使用 mean() 函数就可以了。

我不确定如何将 sum() 和 mean() 函数结合起来,尝试将两个函数分开似乎会导致信息丢失,例如:

df.groupby('month')[['amount']].sum()

【问题讨论】:

    标签: python python-3.x pandas dataframe pandas-groupby


    【解决方案1】:

    groupby 上使用agg 函数:

    df.groupby('month').agg({
        'amount': sum,
        'price': 'mean'
    })
    

    意味着您可以使用 pandas 方法,将其放在引号 'mean' 或 numpy 表示为 np.mean

    【讨论】:

      猜你喜欢
      • 2018-07-30
      • 1970-01-01
      • 2020-01-16
      • 1970-01-01
      • 2017-04-11
      • 2021-11-19
      • 1970-01-01
      • 1970-01-01
      • 2021-06-16
      相关资源
      最近更新 更多