带有双引号的熊猫数据

发布于 2021-01-29 17:10:23

我正在尝试读取.csv格式的大型数据集,该数据集使用熊猫库自动更新。问题在于,在我的数据中,第一行是不带双引号的字符串,而其他列是带双引号的字符串。我无法手动调整.csv文件。

简化的数据集看起来像这样

  1. A B C D”
  2. comp_a,“树”,“房子”,“门”
  3. comp_b,“卡车”,“红色”,“蓝色”

我需要将数据存储为单独的列,且不带引号,例如:

  1. A B C D
  2. comp_a树屋门
  3. comp_b卡车红色蓝色

我尝试使用

import pandas as pd
df_csv = pd.read(path_to_file,delimiter=',')

这给了我完整的标题作为最后一列的单个变量

  1. A B C D”
  2. comp_a“树”“房屋”“门”
  3. comp_b“卡车”“红色”“蓝色”

与我需要的结果最接近的结果是使用以下命令

df_csv = pd.read(path_to_file,delimiter=',',quoting=3)

可以正确识别每列,但会添加一堆额外的双引号。

  1. “A B C D”””
  2. “ comp_a”“树”“”房屋“”“门”“”
  3. “ comp_b”“卡车”“”红色“”“”蓝色“”“

将引号设置为0到2之间的值只会将整行读取为单列。

有谁知道在读取.csv文件时如何删除所有引号?

关注者
0
被浏览
47
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    只需加载数据,pd.read_csv()然后使用.replace('"','', regex=True)

    一行中将是:

    df = pd.read_csv(filename, sep=',').replace('"','', regex=True)
    

    设置列名称:

    df.columns = df.iloc[0]
    

    然后删除第0行:

    df = df.drop(index=0).reset_index(drop=True)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看