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

Python 中如何将指定格式的 DataFrame 按需求完成透视转换?

Pandas DataFrame 透视转换实现方案

你可以直接使用Pandas自带的透视方法完成转换,操作非常简单:

首先确认原始DataFrame的三列名称,这里假设原始表三列分别为类型、时间、指标值,你可以替换为你实际的列名使用。

  • 如果你原始数据中类型+时间的组合没有重复值,直接用pivot方法即可:
import pandas as pd

# 这里的df就是你原始的DataFrame
target_df = df.pivot(
    index="类型",  # 要作为行索引的列名
    columns="时间", # 要作为列名的列名
    values="指标值" # 要填充到单元格的数值列名
)
  • 如果存在同一类型+时间组合下有多个数值需要聚合的情况,改用pivot_table方法指定聚合规则即可,比如求和、求均值,需要填充缺失值也可以直接在方法内设置:
# 以求和、缺失值填充为0为例
target_df = df.pivot_table(
    index="类型",
    columns="时间",
    values="指标值",
    aggfunc="sum",
    fill_value=0
)

如果转换后需要把行索引的类型恢复为普通列,追加一行代码即可:

target_df = target_df.reset_index()

如果转换后出现多层级的列名,你可以使用target_df.columns = target_df.columns.get_level_values(1)的方式调整为单层列名,匹配你需要的格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 11:18:04