我正在试图使用pickle对DataFrame进行序列化。
import pandas as pd
from pandas import DataFrame
data = pd.read_table('Purchases.tsv',index_col='coreuserid')
data.to_pickle('Purchases.pkl')
我已经运行了一段时间的“数据”,没有出现任何问题,所以我知道这不是数据损坏的问题。我认为可能是语法问题,但我已经尝试了许多变体。我不确定是否应该提供整个错误消息,但它以以下内容结尾:
\pickle.pyc in to_pickle(obj, path)
13 """
14 with open(path, 'wb') as f:
15 pkl.dump(obj, f, protocol=pkl.HIGHEST_PROTOCOL)
SystemError: error return without exception set
已创建Purchases.pkl文件,但如果我调用
data = pd.read_pickle('Purchases.pkl')
我遇到了EOFError错误。我正在使用Canopy 1.4,所以应该是最近的pandas 0.13.1版本,应该具备此功能。