使用 agg 函数在 pandas 中分组时进行舍入

Posted

技术标签:

【中文标题】使用 agg 函数在 pandas 中分组时进行舍入【英文标题】:Round while groupping by in pandas with agg function 【发布时间】:2020-05-17 07:21:22 【问题描述】:

是否有可能将这个组中 C 的平均值四舍五入?

df.groupby('A').agg('B':'sum', 'C':'mean')

【问题讨论】:

df.groupby('A').agg('B':'sum', 'C':lambda x: np.round(np.mean(x))) 为什么不在单独的行中舍入结果?这将更具可读性,而不是在一行中堆积太多东西。 【参考方案1】:

您可以在聚合之后放置轮次,如下所示:

df.groupby('A').agg('B':'sum', 'C':'mean').round(2)

在聚合中,不能在内部包含圆形。因此,您可以在聚合之后放置round。这是一种简单有效的方法。

Round(2) 会将其四舍五入到小数点后两位。您可以更改 2 以包含您想要将数字四舍五入的任何小数位数。例如,要四舍五入到小数点后 3 位,您可以使用 .round(3) 等等。

【讨论】:

以上是关于使用 agg 函数在 pandas 中分组时进行舍入的主要内容,如果未能解决你的问题,请参考以下文章

pandas使用groupby函数按照多个分组变量进行分组聚合统计使用agg函数计算分组的多个统计指标(grouping by multiple columns in dataframe)

pandas使用groupby函数进行分组聚合并使用agg函数将每个分组特定变量对应的多个内容组合到一起输出(merging content within a specific column of g

pandas使用groupby函数进行分组聚合使用agg函数指定聚合统计计算的数值变量并自定义统计计算结果的名称(naming columns after aggregation)

python使用pandas计算dataframe中每个分组的极差分组数据的极差(range)使用groupby函数和agg函数计算分组的最大值和最小值

Pandas`agc`列表,“AttributeError / ValueError:函数不减少”

pandas使用groupby函数agg函数获取每个分组聚合对应的均值(mean)实战:计算分组聚合单数据列的均值计算分组聚合多数据列的均值