我尝试使用以下代码加载包含43186行的CSV文件:
import csv
import pandas as pd
df = pd.read_csv('file.csv', sep=',', engine='python', error_bad_lines=False)
它输出
Skipping line 2574: field larger than field limit (131072)
Skipping line 892: Expected 13 fields in line 892, saw 15
Skipping line 6376: Expected 13 fields in line 6376, saw 15
Skipping line 35433: Expected 13 fields in line 35433, saw 15
在内核最终死亡之前。我尝试了一些其他更大的CSV,同样的代码适用于其他CSV。我怎样才能解决这个问题?我可以跳过台词。我试图用csv.field_size_limit(sys.maxsize)
增加限制
但它也不起作用。我从第35433行浏览到最后,那里没有更多的坏行,如果确实存在坏行,它应该被error_bad_lines=False
跳过,对吗?任何帮助都将不胜感激
这可能意味着解析器将多个(很多)行视为一个多行字段
所以csv文件中的引用肯定有问题
一种解决方案(除了修复csv文件外)可能是以某种方式告诉解析器不要使用/扫描多行字段-这会将该行标记为无效
或者csv文件根本不使用带引号的字段(这将允许在字段内使用引号)。在这种情况下,您应该告诉解析器字段没有被引用
相关问题 更多 >
编程相关推荐