如何使用Python Pandas处理双引号包裹的CSV行并拆分列
解决CSV整行被识别为单列的问题
针对你的CSV数据每行被双引号整体包裹,导致read_csv将整行识别为单一列的问题,有两种简洁的处理方式:
方法一:读取后拆分列
先按原样读取CSV(此时每行是单列),再对该列按逗号拆分并展开为多列:
import pandas as pd # 读取原始CSV,每行作为单列 df = pd.read_csv('your_file.csv', header=None) # 将单列按逗号拆分,展开为多列 df = df[0].str.split(',', expand=True) # 查看结果 print(df)
方法二:预处理文件内容再读取
先读取文件内容,去掉每行首尾的双引号,再用处理后的内容创建DataFrame:
import pandas as pd from io import StringIO # 读取文件原始内容 with open('your_file.csv', 'r', encoding='utf-8') as f: raw_content = f.read() # 移除每行首尾的双引号 processed_content = '\n'.join(line.strip('"') for line in raw_content.strip().split('\n')) # 基于处理后的内容生成DataFrame df = pd.read_csv(StringIO(processed_content), header=None) print(df)
两种方法都能让你的数据按逗号分隔为不同列,输出符合预期的结构。
内容的提问来源于stack exchange,提问作者pudianna
相关产品推荐
相关产品推荐

