Python Pandas - csv文件由于quotechars而未正确拆分为列?

svdrlsy4  于 5个月前  发布在  Python
关注(0)|答案(2)|浏览(62)

我一直在与以下问题斗争了一段时间,似乎找不到正确的解决方案。
问题如下:我有一个包含13列的CSV文件,当我将CSV文件读入Python Pandas时,所有内容都放在一列中,我似乎无法将数据集正确地拆分为13列。
我尝试了很多东西,但这是我最近使用的代码和它的输出结果:

import pandas as pd

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

print(df.head())

个字符
下面是文件中的一行数据:

111111,"2023-11-12","18:09:34","14","Questionnaire fill-in","Company ESG Assessment (new)","Diversity, Equity and Inclusion","Assessment","Company ESG Assessment (new)- Diversity, Equity and Inclusion: Assessment","Data gathering","Questionnaire fill-in","Questionnaire fill-in","Questionnaire fill-in"


我尝试指定quotechars = '"'
我尝试了以下代码行:sep=', (?=(?:"[^"]*?(?: [^"]*)*))|, (?=[^",]+(?:,|$))'
提前1000次感谢:)

zujrkrfu

zujrkrfu1#

试试这个:

check=pd.read_csv(r"C:\Users\743622\Desktop\trial.txt",quoting=csv.QUOTE_NONE,quotechar = '"',sep='","',escapechar='\\',engine='python')
check[['SESSION ID','ACTIVITY DATE']]=check.iloc[:,0].str.split(',',expand=True)
check.drop(columns=['SESSION ID,"ACTIVITY DATE'],inplace=True)

字符串

nuypyhwy

nuypyhwy2#

可能是由于文件中存在不正确的字符/特殊字符,甚至是不同的编码造成的。请尝试以下操作,

import csv
import pandas as pd

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

df = pd.read_csv(file_path, quoting=csv.QUOTE_MINIMAL, quotechar='"', escapechar='\\', engine='python')

print(df.head())

字符串

相关问题