问题描述
From the docs可以.aggregate
这样的dataframe.groupby
对象:
df = pd.DataFrame([[1,2,3],[-4,5,6],[7,8,9],[np.nan,np.nan,np.nan]],columns=['A','B','C'])
,然后像这样aggregate
:
my_agg = {'A' : ['mean','min'],'B' : ['mean','max']}
df.agg(my_agg)
很好,但是我想在这里使用列abs(np.mean)
的{{1}}。是否可以将其定义为A
的一部分?有什么解决方案?
解决方法
是的,我们可以通过lambda
my_agg = {'A' : ['mean','min',lambda x : abs(x.mean())],'B' : ['mean','max']}
df.agg(my_agg)
Out[194]:
A B
<lambda> 1.333333 NaN
max NaN 8.0
mean 1.333333 5.0
min -4.000000 NaN