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

如何插入列名并将列数据转成行?df.Column[]值被替换问题求助

解决DataFrame列转行并保留列名的问题

需求与问题

需要实现插入列名并将列数据转换为行的操作:

  • 原始数据集:
    原始数据集

  • 期望结果:
    期望结果

使用df.Column[]操作时出现数据值被列名替换的问题,操作后效果:
操作后结果

解决方法

使用pandas的melt()函数可以精准实现需求,避免数据被列名替换的问题。

示例代码

import pandas as pd

# 替换为你的实际DataFrame
df = pd.DataFrame({
    '姓名': ['张三', '李四'],
    '语文': [90, 80],
    '数学': [85, 95],
    '英语': [95, 88]
})

# 执行列转行操作
result_df = df.melt(
    id_vars=['姓名'],  # 指定无需转换的固定列
    var_name='科目',   # 原列名对应的新列名称
    value_name='分数'  # 原列值对应的新列名称
)

print(result_df)

参数说明

  • id_vars:设置需要保留的列(不参与行转换的列,比如示例中的「姓名」)
  • var_name:定义将原列名转换后的新列标题
  • value_name:定义将原列数据转换后的新列标题

根据你的实际数据集调整id_vars、var_name和value_name的参数值即可得到符合预期的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 07:01:06