小编Sae*_*eed的帖子

pandas 数据框中多列的聚合

数据:

z = pd.DataFrame({'a':[1,1,1,2,2,3,3],'b':[3,4,5,6,7,8,9], 'c':[10,11,12,13,14,15,16]})
Run Code Online (Sandbox Code Playgroud)

我的代码:

gbz = z.groupby('a')
f1 = lambda x: x.loc[x['b'] > 4]['c'].mean()
f2 = lambda x: x.mean()
f3 = {'I don't know what should I write here':{'name1':f1}, 'b':{'name2': f2}}
list1 = gbz.agg(f3)
Run Code Online (Sandbox Code Playgroud)

问题:

如何在函数“f1”中使用多个列?(该函数需要groupby对象的两列)

预期结果:

     name1  name2
1    12.0   4
2    13.5   6.5
3    15.5   8.5
Run Code Online (Sandbox Code Playgroud)

python group-by dataframe pandas pandas-groupby

2
推荐指数
1
解决办法
2723
查看次数

标签 统计

dataframe ×1

group-by ×1

pandas ×1

pandas-groupby ×1

python ×1