读取为CSV分析器错误,重新保存时为工作程序

时间:2019-07-19 22:23:05

标签: python-3.x pandas csv

我正在尝试读取熊猫df的CSV文件。执行此操作时出现错误。但是,如果我在excel中打开csv并使用新名称进行另存为,则它可以完美地工作。我不能每次都这样做,但是如果我可以编写代码来做到这一点,那将对我有用。

for file in os.listdir(downloadsdir):
    if 'SalesByInvoiceType' in file:
        file = os.path.join(downloadsdir, file)
        df = pd.read_csv(file, delimiter=',')

错误:

ParserError: Error tokenizing data. C error: Expected 13 fields in line 11, saw 15

我更改了代码,使其包含一些read_csv参数

for file in os.listdir(downloadsdir):
    if 'SalesByInvoiceType' in file:
        file = os.path.join(downloadsdir, file)
        df = pd.read_csv(file, encoding ='cp1252', sep='delimiter', header=None)

df

上述声明的输出

    0
0   "Set. Officer","Case #"...
1   
2   "TJ Stephens","10043","...
3   
4   "Lindsay Anderson","103...
5   
6   "Fred T. Rogers","10460...
7   
8   "Fred T. Rogers","10484...

当我尝试使用其中的一行来抓

df[0][0]

输出为

'"\x00S\x00e\x00t\x00.\x00 \x00O\x00f\x00f\x00i\x00c\x00e\x00r\x00"\x00,\x00"\x00C\x00a\x00s\x00e\x00 \x00#\x00"\x00,\x00"\x00I\x00n\x00v\x00o\x00i\x00c\x00e\x00 \x00T\x00y\x00p\x00e\x00"\x00,\x00"\x00I\x00n\x00v\x00o\x00i\x00c\x00e\x00 \x00T\x00y\x00p\x00e\x00 \x00G\x00r\x00o\x00u\x00p\x00"\x00,\x00"\x00Q\x00u\x00a\x00n\x00t\x00i\x00t\x00y\x00"\x00,\x00"\x00U\x00n\x00i\x00t\x00 \x00P\x00r\x00i\x00c\x00e\x00"\x00,\x00"\x00A\x00m\x00o\x00u\x00n\x00t\x00"\x00,\x00"\x00C\x00l\x00i\x00e\x00n\x00t\x00 \x00S\x00t\x00a\x00t\x00u\x00s\x00"\x00,\x00"\x00D\x00a\x00t\x00e\x00"\x00,\x00"\x00D\x00e\x00s\x00c\x00r\x00i\x00p\x00t\x00i\x00o\x00n\x00"\x00,\x00"\x00T\x00e\x00a\x00m\x00 \x00N\x00a\x00m\x00e\x00"\x00,\x00"\x00C\x00r\x00e\x00a\x00t\x00e\x00d\x00B\x00y\x00"\x00,\x00"\x00i\x00n\x00v\x00o\x00i\x00c\x00e\x00 \x00C\x00r\x00e\x00a\x00t\x00e\x00d\x00 \x00B\x00y\x00"\x00'

而不是我刚刚通过df时看到的内容。

0 个答案:

没有答案