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

求助:使用Pandas导入CSV文件时无法正确拆分列

解决Pandas读取CSV时列合并的问题

以下是几种针对性的解决方法,按优先级尝试:

  1. 确认实际分隔符
    很多CSV文件表面标注是逗号分隔,但实际用的是分号(;)、制表符(\t)或者其他符号(比如欧洲地区的CSV常用分号)。先直接打开CSV文件(用记事本、VS Code等)查看第一行的字段分隔方式:
  • 如果是分号,执行:
df = pd.read_csv("Test.csv", delimiter=';')
  • 如果是制表符,执行:
df = pd.read_csv("Test.csv", delimiter='\t')
  1. 处理带空格的逗号分隔
    如果分隔符确实是逗号,但字段间带有空格(比如A, B, C),需要跳过逗号后的空格:
df = pd.read_csv("Test.csv", delimiter=',', skipinitialspace=True)
  1. 处理含逗号的字段(带引号包裹)
    如果CSV里的字段本身包含逗号,且用双引号包裹(比如"Name, Age", City),需要指定引号识别参数:
df = pd.read_csv("Test.csv", delimiter=',', quotechar='"')
  1. 让Pandas自动检测分隔符
    使用正则表达式匹配任意形式的分隔(包括带空格的逗号),配合Python引擎提升兼容性:
df = pd.read_csv("Test.csv", sep=r',\s*', engine='python')
  1. 排查编码问题
    如果文件编码异常,也会导致分隔符识别错误,尝试指定编码格式:
df = pd.read_csv("Test.csv", delimiter=',', encoding='utf-8')
# 若utf-8无效,试试latin-1
df = pd.read_csv("Test.csv", delimiter=',', encoding='latin-1')
  1. 查看原始文件内容
    如果以上方法都无效,先打印文件第一行确认格式:
with open("Test.csv", 'r') as f:
    print(f.readline())

根据输出的实际内容,再调整read_csv的参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 21:10:00