首页 > 解决方案 > 执行 groupby 时出错,然后使用 sum() 函数

问题描述

当我尝试使用我的第一种方法进行分组时,它的工作正常: 1. 它工作正常。

n=df.groupby(['A','B'])['x','y','z'].sum()
  1. 它没有醒来。
s=x,y,z
n=df.groupby(['A','B'])s.split(",").sum()
  1. 即使这不起作用
s=['x','y','z']
n=df.groupby(['A','B'])s.sum()

在上述所有情况下,只有 1 工作正常,其余工作不正常,但我在每个 groupby 之后提供相同的列表。帮助我让他们摆脱这种情况,或者在 groupby 之后提出其他一些求和的方法,因为我不想遵循第一种方法。

标签: pythonpandas

解决方案


groupby在-之后创建嵌套列表[[]]

s='x,y,z'
n=df.groupby(['A','B'])[s.split(",")].sum()

s=['x','y','z']
n=df.groupby(['A','B'])[s].sum()

因为也工作:

n=df.groupby(['A','B'])[['x','y','z']].sum()

喜欢:

n=df.groupby(['A','B'])['x','y','z'].sum()

推荐阅读