Pandas读取CSV出现格式异常、iloc无法获取完整数据如何解决?
问题根因
pandas read_csv 方法默认使用逗号,作为字段分隔符,你当前使用的CSV文件实际采用分号;作为分隔符,因此读取时会把整行内容识别为单个字段,导致所有数据挤在同一列,iloc无法按字段拆分取值。
解决方法
基础修复
读取文件时显式指定sep参数为分号即可:
import pandas as pd dataset = pd.read_csv("你的CSV文件路径", sep=";")
异常场景补充参数
如果读取后字段两端仍残留双引号、或者存在编码乱码问题,可以叠加对应参数:
# quoting=1 表示自动识别并移除字段两端的标准双引号 # encoding可根据文件实际编码替换为gbk等其他编码格式 dataset = pd.read_csv("你的CSV文件路径", sep=";", quoting=1, encoding="utf-8")
验证方式
读取完成后执行以下代码确认格式正常:
- 执行
print(dataset.columns),输出应为拆分后的独立列名(age、job、marital等) - 执行
print(dataset.iloc[0]),输出应为单个行的各字段值,而非整行拼接字符串
内容的提问来源于stack exchange,提问作者Kyv
相关产品推荐
相关产品推荐

