我有超过100万行,并且有一个非常长的文本字段使我的一些行不平衡。这会导致某些行的列数多于我的标题。我用以下方法解决了这个问题:
read_csv('filename.csv', error_bad_lines=False)
这里的问题是看起来有些行比我的标题更少。这是一个问题(一些领域转移。)
我该如何解决这个问题?是否有一种方法(我责怪那个长文本字段)作为一个字段?
评论后编辑
字段分隔符是逗号。
当我运行df.dtypes
所有字段但其中一个似乎是对象时,不过我最初有int和datetime字段,通过pandas读取为对象。
在评论2后编辑
这里是我在.csv中的标题 ID(INT),文本框(字符串),ID2(炭),评分(INT),类型(字符串),长度(INT),名称(字符串),日期时间(日期时间),大小(INT),电子邮件(字符串)< / p>
主要问题是textField区域。其他人不能拥有和欺骗charsrs逃避csv语法。但是textField是由用户创建的,它可以是unicode中的任何东西;表情符号,非英语字符搞笑引用等。
答案 0 :(得分:1)
主要问题是
textField
区域。其他人不能拥有和犯规 逃避csv语法的characers。但是textField是由 用户,它可以是unicode中的任何东西;表情符号,非英语字符搞笑 引用等。
textField
应该用双引号括起来,并且该字段中的任何引号都必须使用另一个引号进行转义。
由于该字段可以包含任何字符,因此其中一些字段可能是多行的,这也可以解释为什么某些行的列数较少而其他数据似乎有效。
因此请确保您的解析器支持,并设置为使用多行。但这只有在正确引用这些字段时才有效。