【发布时间】:2016-08-18 10:36:46
【问题描述】:
我有一长串列,我想一次性计算非零中位数、平均值和标准差。我不能只删除基于 1 列的 0 行,因为同一列中另一列的值可能不是 0。
以下是我目前拥有的计算中位数、平均值等的代码,包括零。
agg_list_oper={'ABC1':[max,np.std,np.mean,np.median],
'ABC2':[max,np.std,np.mean,np.median],
'ABC3':[max,np.std,np.mean,np.median],
'ABC4':[max,np.std,np.mean,np.median],
.....
.....
.....
}
df=df_tmp.groupby(['id']).agg(agg_list_oper).reset_index()
我知道我可以编写带有循环的长代码来一次处理一列。 有没有办法在 pandas groupby.agg() 或其他一些函数中优雅地做到这一点?
【问题讨论】:
标签: python pandas aggregate-functions median summarization