You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas中对含重复值的数据透视并按日期聚合

解决方法

首先将字符串类型的Values_data转换为数值类型,确保后续聚合运算正常:

df['Values_data'] = df['Values_data'].astype(int)

使用pivot_table替代pivot实现透视,它支持通过聚合函数处理重复的索引-列组合,避免报错:

# 以sum为聚合函数,可根据需求替换为mean、count、max等
pivot_df = df.pivot_table(
    index='Dates',
    columns='Category_data',
    values='Values_data',
    aggfunc='sum'
)

# 可选:重置索引,让Date作为普通列,同时移除列轴的名称
pivot_df = pivot_df.reset_index().rename_axis(None, axis=1)

执行后得到的结果格式如下:

DatesABC
2017-11-08166
2017-11-09311
2017-11-10411
2017-11-13656
2017-11-14131
2017-11-15111

核心说明

  • pivot要求index与columns的组合必须唯一,否则触发重复值报错;pivot_table通过aggfunc参数对重复组合的数据进行聚合,彻底解决该问题。
  • 聚合函数可按需选择:统计数据条数用count,计算平均值用mean,取最大值用max等。

内容的提问来源于stack exchange,提问作者Paul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 00:45:40