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

Python CSV合并列时触发KeyError的排查与解决

解决Pandas合并列时的KeyError问题

问题根源

你遇到的KeyError是因为CSV文件读取时分隔符设置错误:代码里的sep=r'\\t'会匹配\\t(两个反斜杠加字母t),而非实际的制表符,导致Pandas把整个文件当成一列读取,自然找不到Name_1、Name_2、Name_3这些列。

修正方案

1. 修复分隔符参数

将读取CSV的代码中,分隔符改为正确的制表符格式:

  • 用原始字符串:sep=r'\t'
  • 或直接用转义字符:sep='\t'

2. 优化合并逻辑(可选但推荐)

原始合并逻辑会把空值转为'nan'字符串,建议先填充空值,再去除合并后字符串的首尾多余空格,避免无效内容。

修正后的完整代码

import pandas as pd

# 正确读取制表符分隔的CSV文件
df = pd.read_csv("Test.csv", sep=r'\t', engine='python')

# 填充空值→合并列→去除首尾空格
df['Name'] = df[['Name_1', 'Name_2', 'Name_3']].fillna('').apply(' '.join, axis=1).str.strip()

# 保存处理后的文件
df.to_csv("Test-new.csv", index=False)

验证步骤(可选)

如果仍有疑问,可以先打印读取后的列名,确认列是否正确识别:

print(df.columns)

正常输出应包含Name_1、Name_2、Name_3,说明文件读取正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 07:37:04