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

如何使用Python Pandas将长格式DataFrame转换为指定宽表格式

Pandas长表转宽表实现步骤

首先假设你的原始长格式DataFrame命名为df_long,包含Date、Country、Value三列,以下是两种常用实现方案:

  • 方案1:用pivot方法(无重复分组数据时首选)
    直接指定行、列、值对应的原始字段即可完成转换:
# 转换后Date为行索引,国家名为列名
df_wide = df_long.pivot(index='Date', columns='Country', values='Value')
# 若需要把Date从索引还原为普通列,加下面这行
df_wide = df_wide.reset_index()
  • 方案2:用pivot_table方法(存在重复分组数据时用)
    如果原始数据中存在同一日期同一国家的多条记录,用pivot会报错,此时可以用pivot_table指定聚合规则处理重复值:
# 示例中aggfunc设为mean,即重复值取平均值,可根据需求换成sum、first等规则
df_wide = df_long.pivot_table(index='Date', columns='Country', values='Value', aggfunc='mean')
df_wide = df_wide.reset_index()

转换完成后得到的df_wide就是你需要的格式:每行对应一个日期,每列对应一个国家,单元格填充对应数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 13:24:03