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

Python Pandas读取CSV因引号问题无法正确拆分列求助

解决Pandas读取CSV时无法拆分13列的问题

问题分析

你的CSV文件包含带逗号的引号字段(例如"Diversity, Equity and Inclusion"),直接使用sep=','会导致Pandas误将引号内的逗号识别为字段分隔符,进而把所有内容合并到单一列中。

解决方案

方法1:调整read_csv参数

添加skipinitialspace=True忽略分隔符后的空格,确保引号内的内容被识别为完整字段:

import pandas as pd

file_path = "C:\\Users\\User23\\Downloads\\Detail_Table_Test(2).csv"
    
df = pd.read_csv(
    file_path,
    sep=',',
    header=0,
    quotechar='"',
    skipinitialspace=True,
    engine='python'
)

print(df.head())

方法2:使用Python内置csv模块读取

如果Pandas的read_csv仍有问题,改用csv模块先解析数据再转为DataFrame,兼容性更强:

import pandas as pd
import csv

file_path = "C:\\Users\\User23\\Downloads\\Detail_Table_Test(2).csv"

with open(file_path, 'r', encoding='utf-8') as f:
    # 配置csv读取器,指定引号和分隔符
    reader = csv.reader(f, quotechar='"', delimiter=',', skipinitialspace=True)
    headers = next(reader)  # 获取表头
    data_rows = list(reader)  # 获取所有数据行

df = pd.DataFrame(data_rows, columns=headers)
print(df.head())

方法3:指定文件编码

如果文件存在编码问题,尝试添加encoding参数(例如encoding='utf-8'或encoding='gbk'):

df = pd.read_csv(
    file_path,
    sep=',',
    header=0,
    quotechar='"',
    skipinitialspace=True,
    encoding='utf-8',
    engine='python'
)

验证

运行上述代码后,可通过print(df.shape)检查输出是否为(数据行数, 13),确认13列已正确拆分。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 08:34:58