我有一个以下数据框-result from this question:
t2m ... kont sum d1 d2
latitude longitude ...
46.5 18.0 0.284698 ... 0.001613 1998-01-12 07:00:00 1998-01-24 08:00:00
18.0 -1.304504 ... FROMHERE 0.004097 1998-01-24 08:00:00 1998-01-24 09:00:00
18.0 0.345001 ... FROMHERE 0.024207 1998-01-24 17:00:00 1998-01-25 00:00:00
18.0 -4.786346 ... FROMHERE xxxxxx
我想实现此数据帧的.agg
的自定义和内置函数的组合。
这是代码:
dfgeo=df.groupby(['latitude', 'longitude']).agg(
std=('sum',np.std),
maks=('sum','max'),
mean=('sum',(lambda x: mean(absolute(x - mean(x)))))
).reset_index()
代码mean=('sum',(lambda x: mean(absolute(x - mean(x)))))
模仿了平均平均偏差,因为它不是直接建立在Numpy中的,或者我找不到它。
我收到以下错误:
KeyError: "[('ar', '<lambda>')] not in index"
感谢您的帮助。
答案 0 :(得分:1)
对我来说,使用自定义功能:
def f(x):
return np.mean(np.abs(x - np.mean(x)))
dfgeo=df.groupby(['latitude', 'longitude']).agg(
std=('sum',np.std),
maks=('sum','max'),
mean=('sum',f)
).reset_index()