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

使用Python pandas重排CSV文件实现长表转宽表的问题咨询

实现CSV长表转宽表的解决方案

你需要的长表转宽表操作可以直接用pandas内置的pivot_table方法实现,不需要手动拆分过滤每列数据,完整实现代码如下:

import pandas as pd

# 1. 读取原始CSV数据
df = pd.read_csv('MatNavi.csv', header=0)

# 2. 透视转换为宽表,缺失值自动填充0
result_df = pd.pivot_table(
    df,
    index="Element",  # 行维度为元素名称
    columns="Temperature",  # 列维度为温度值
    values="Fy",  # 单元格填充对应Fy值
    fill_value=0  # 元素无对应温度数据时填充0
).reset_index()  # 将索引列Element转为普通列,匹配你需要的输出结构

# 可选:对温度列按数值大小排序
temp_columns = result_df.columns[1:].astype(int)
sorted_columns = ["Element"] + sorted(temp_columns)
result_df = result_df.reindex(sorted_columns, axis=1)

# 3. 导出结果到新CSV
result_df.to_csv("wide_format_result.csv", index=False)

原有代码问题说明

你之前编写的代码中存在未定义变量Mn的问题,且仅过滤了Element A的单组数据,无法批量处理所有元素的转换逻辑,使用内置透视方法可以自动完成所有元素、温度的分组匹配,不需要手动遍历过滤。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 14:45:03