Pandas 在多个列上运行groupby agg函数?

Pandas 在多个列上运行groupby agg函数?,pandas,pandas-groupby,Pandas,Pandas Groupby,通常,当您在单个列上应用聚合时,可以这样做: def myfunc(x): return x.mean() df.groupby('col').agg(named_agg = ('col1', myfunc)) def myfunc(x, y): return (x + y).mean() df.groupby('col').agg(named_agg = (['col1', 'col2'], myfunc)) 在我的例子中,我的函数myfunc需要来自两列的值,如下所示

通常,当您在单个列上应用聚合时,可以这样做:

def myfunc(x):
    return x.mean()

df.groupby('col').agg(named_agg = ('col1', myfunc))
def myfunc(x, y):
    return (x + y).mean()

df.groupby('col').agg(named_agg = (['col1', 'col2'], myfunc))
在我的例子中,我的函数
myfunc
需要来自两列的值,如下所示:

def myfunc(x):
    return x.mean()

df.groupby('col').agg(named_agg = ('col1', myfunc))
def myfunc(x, y):
    return (x + y).mean()

df.groupby('col').agg(named_agg = (['col1', 'col2'], myfunc))

我不想使用apply,因为这只是我将要进行的几个聚合中的一个,我想在一个命令中包含所有聚合。有什么解决方案吗?

请提供您的输入和所需的输出。这与输入/输出无关,而与pandas groupby agg的使用有关。但是,我在上面添加了一些解释,请提供您的输入和所需的输出。这并不是真正的输入/输出,而是pandas groupby agg的用法。不过,我在上面添加了一些解释