2017-01-29 22 views
2

私が手に私のコード行からこのエラーとValueError:サポートされていないピクルスプロトコル:パンダと4

ValueError: unsupported pickle protocol: 4 

full_df = pd.read_pickle('df_userID.pickle') 

(上python2.7でスクリプトを実行しますUbuntu 14.04.5,3.13.0-95- generic)

ありがとうございます。

+1

'df_userID.head()'をテストできるように提供できますか? – MYGz

+0

確実:データフレームの1行目https://www.dropbox.com/s/ic7brs7tq5xpt7y/trial_copy.pickle?dl=0 – jjrr

+0

ピクルスファイルをどのように作成しましたか? – MaxU

答えて

4

それは次のように、このピクルスファイルは次のように作成されているように見えます:

0、1、2:

pickle.dump(df, file_name, protocol=4) 

または

pickle.dump(df, file_name, protocol=-1) 

とPython 2.xではプロトコルのみを受け入れますソリューション:

いずれかを使用する酸洗または下位プロトコルバージョン:

df.to_pickle('/path/to/df.pickle') # preferred and version independent solution 

か:

pickle.dump(df, '/path/to/df.pickle', protocol=2) 

別のオプションは、HDFStore(H5)またはFeatherFormatを使用することです - 両方のオプションは非常に高速で信頼性の高いです。

+0

ありがとう、今私は理解しています。私の協力者の一人によって作成されました。もう一つの解決策はpython3を使うことですが、そこに別の問題があります。そのため、私はpython2に切り替えました。私はパンダを更新するのに問題があります。このエラーが発生しました。 'ImportError:' pandas.indexes 'というモジュールがありません。 ' – jjrr

+0

@jjrr、[this](http://stackoverflow.com/questions/37371451/) – MaxU

+0

ええ、まさしく私がやったことですが、うまくいきません。 'pip3 show pandas'は私にまだ0.13.1を与え、' pip show pandas'は0.19.2 – jjrr

関連する問題