2017-01-23 187 views
2

我想使用joblib加載一個pkl文件(在Windows機器上)。 所以我的代碼是加載pkl(使用joblib或pickle)生成keyerror 120

from sklearn.externals import joblib 
output = joblib.load("file.pkl") 

我得到這個錯誤:

File "cleaning.py", line 97, in <module> 
output = joblib.load('file.pkl') 
File "C:\Users\me\AppData\Local\Continuum\Anaconda3\lib\site-packages\sklearn\externals\joblib\numpy_pickle.py", line 459, in load 
    obj = unpickler.load() 
    File "C:\Users\me\AppData\Local\Continuum\Anaconda3\lib\pickle.py", line 1039, in load 
    dispatch[key[0]](self) 
KeyError: 120 

我試圖也用泡菜,以這樣的方式

import pickle 
with open('file.pkl', 'r') as input: 
    output = pickle.load(input) 

但我得到這個其他錯誤:

File "cleaning.py", line 94, in <module> 
    output = pickle.load(input) 
_pickle.UnpicklingError: invalid load key, 'x'. 

有沒有人可以h elp我? 我已經在stackoverflow上搜索,但我沒有找到任何解決方案,適合我... 謝謝

+0

我在windows server 2008/anaconda/python3.5安裝中遇到同樣的問題。 – MyopicVisage

回答

0

嘗試將scikit-learn升級到0.18.1。

pip install scikitlearn==0.18.1 

從默認anaconda版本(0.17)升級後,這對我有效。