将csv读入csv行的*第一个/索引单元格中带有逗号*的pandas,而不更改值

2024-06-17 16:14:37 发布

您现在位置:Python中文网/ 问答频道 /正文

好吧,我得到这个错误…: "错误.errors.ParserError:标记数据时出错。C错误:第12行应为6个字段,saw 7“

…尝试将csv导入到具有熊猫.read\u csv():

path,Drawing_but_no_F5,Paralell_F5,Fixed,Needs_Attention,Errors
R:\13xx   Original Ranch Buildings\1301 Stonehouse\1301-015\F - Bid Documents and Contract Award,Yes,No,No,No,No
R:\13xx   Original Ranch Buildings\1302 Carriage House\1302-026A Carriage House, Redo North Side Landscape\F - Bid Document and Contract Award,Yes,No,No,No,No
R:\13xx   Original Ranch Buildings\1302 Carriage House\1302-028\F - Bid Documents and Contract Award,Yes,No,No,No,No
R:\13xx   Original Ranch Buildings\1302 Carriage House\1302-029\F - Bid Documents and Contract Award,Yes,No,No,No,No

显然,在上面的条目中,是第三行抛出错误。注意事项包括,我必须使用该列作为路径来处理那里的文件,因此不允许更改条目。CSV是在别处创建的;我按原样得到它。 我确实想保留列标题。 这个filepath列稍后用作索引,所以我想保留它。你知道吗

很多,很多类似的问题,但解决方案似乎非常具体,我无法让他们配合我的用例:

Pandas, read CSV ignoring extra commas 解决方案似乎会更改条目值或依赖于最后一列中的单元格

Commas within CSV Data 解决方案包括sql工具和mythinks。我不想把csv读入sql表。。。 csv文件已经用逗号分隔,所以我认为更改sep值不起作用。。(我还不能让它工作)

Problems reading CSV file with commas and characters in pandas 解决方案抛出错误:“对于行输入读取器:_csv.错误:迭代器应该返回字符串,而不是字节(您是在文本模式下打开文件的吗?) 不太乐观,因为op有引号中的单元格值,而我没有。你知道吗


Tags: andcsvno错误解决方案yeshousecontract
1条回答
网友
1楼 · 发布于 2024-06-17 16:14:37

这里有一个解决方案,它是对@DSM在您链接的最后一个线程(Problems reading CSV file with commas and characters in pandas)中接受的答案的一个小修改。你知道吗

import csv

with open('original.csv', 'r') as infile, open('fixed.csv', 'w') as outfile:
    reader = csv.reader(infile)
    writer = csv.writer(outfile)
    for line in reader:
        newline = [','.join(line[:-5])] + line[-5:]
        writer.writerow(newline)

运行上述预处理代码后,您应该能够使用pd.read_csv()读取fixed.csv。你知道吗

这个解决方案取决于知道有多少最右边的列总是正确格式化的。在您的示例数据中,最右边的五个列总是好的,因此我们将这些列中左边的所有内容都视为单个字段,这些字段用双引号括起来。你知道吗

相关问题 更多 >