如何在python中的groupby中为lambda函数设置名称标题[重复]

Posted

技术标签:

【中文标题】如何在python中的groupby中为lambda函数设置名称标题[重复]【英文标题】:How to set a name header for a lambda function within groupby in python [duplicate] 【发布时间】:2018-07-07 04:50:20 【问题描述】:

我正在使用以下代码进行分组和计数/求和等。

groups = df[df['isTrade'] == 1].groupby('dateTime')                         
grouped = (groups.agg('tradeBid': [np.sum,lambda x: (x > 0).sum()],)) 

输出给我:

tradeBid    tradeBid
sum <lambda>

79  46
7   6
4   4
20  6

如何更改输出的标题(以便我的最终用户知道这些数据是什么?

【问题讨论】:

【参考方案1】:

您可以提供如下名称:

groups.agg('tradeBid': [('sum', np.sum), ('other', lambda x: (x > 0).sum())])

过去您可以使用 dict 而不是 2 元组列表,但现在已弃用(可能是因为列的顺序是任意的)。

【讨论】:

这是否记录在某处? @ayhan:文档说 agg() 接受“列名字典 -> 函数(或函数列表)”,但没有说 2 元组列表是可接受的替代品。它也没有说现在使用 dict 会导致弃用警告。但我知道 NumPy/Pandas 中许多可以使用 dict 的东西也可以使用 (name, value) 元组列表。所以我试了一下,它奏效了。所以不,它没有记录在案。 :) 是的,我从未见过它,所以我想也许他们在弃用 dict 重命名后添加了这个,但似乎总是有可能的。很高兴知道。 :)

以上是关于如何在python中的groupby中为lambda函数设置名称标题[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Python 脚本中为 Autodesk Maya 2016 中的对象添加颜色?

Python Pandas 如何将 groupby 操作结果分配回父数据框中的列?

如何在 python 中使用 Spark Data frame 和 GroupBy 派生 Percentile

使用 pandas 在数据帧上执行 groupby,按计数排序并获取 python 中的前 2 个计数

如何在 Python 中为 QTableWidget 设置大小提示

如何从 csv 文件中为 python 中的图形打印特定单元格? [复制]