在pandas read_csv中使用utf-8记录分隔符

时间:2015-10-01 14:39:41

标签: python pandas

我有一个分隔字符为NOT character (¬)的分隔文件,我无法使用pandas解析它 - 请参阅下文,列未正确拆分。

test = pd.read_csv("file.csv", sep="¬", encoding="latin-1")
test.head(1)
0       1231�XXX7791�BBB9991�22999KKKK... 
test.shape
Out[128]: (7001001, 1)

我在OS X Yosemite上使用ipython 3.2.0,pandas 0.16.2,2.7.10.final.0。

1 个答案:

答案 0 :(得分:0)

import pandas as pd

df = pd.read_csv('data.csv', sep='\u00AC', encoding ='utf-8', header=None, engine='python')

print(df)

以前的代码会给我这个,这就是你想要的。您只需要将正确的UTF-8编码称为sep

      0        1        2          3
0  1231  XXX7791  BBB9991  22999KKKK

您需要engine=python,因为默认情况下pandas使用不支持正则表达式分隔符的engine=c

来自IPython

enter image description here