【发布时间】:2016-12-06 13:51:11
【问题描述】:
这些是我在 excel 和 csv 文件中的数据:
日期、时间、产品类型 2015-01-02,02:29:45 PM,卡片
我在下面尝试了这段代码,它适用于 excel 文件,但不适用于 CSV 文件。
import numpy as np
import pandas as pd
df = pd.read_excel('file.xlsx')
print(df.head())
我在读取 csv 文件时的代码与上述代码几乎相同,但出现错误。请帮忙。
import numpy as np
import pandas as pd
import datetime
df = pd.read_csv('file.csv', index_col='Date', parse_dates=True)
print(df.head())
错误消息: UnicodeDecodeError:“utf-8”编解码器无法解码位置 2 中的字节 0xa4:无效的起始字节
【问题讨论】:
-
尝试传递
encoding='utf-8':df = pd.read_csv('file.csv', index_col='Date', parse_dates=True, encoding='utf-8') -
我不是 Pandas 专家,但你试过 df = pd.DataFrame.from_csv() 吗?这就是我通常构建 DataFrames 的方式。
-
@EdChum : 仍然收到同样的错误
-
您可能是某种 unicode BOM,您可以尝试
'utf-16'的编码类型,您也可以发布指向 csv 的链接吗? -
@AndrewL:试过了,没用。
标签: python csv pandas time-series