私がこのエラーを持っているとき、私はstatsmodels.apiを正しくインポートすることができません:
ファイル「/home/mlv/.local/lib/python3.5/site-packages/statsmodels/tsa/statespace/tools.py」、59行目、set_modeからimport(_representation、_kalman_filter、_kalman_smoother、ImportError:名前 '_representation'をインポートできません
私はすでにそれを再インストールまたは更新しようとしていますが、それは変わりません。助けてください=)
詳細については githubレポート をご覧ください。
Statsmodelsは、その前にインストールされているいくつかのパッケージに依存しているため、独自のモジュールをコンパイルするためにそれらをキー入力できることがわかりました。依存関係、またはパッケージのセットアップでそれらが指定されていない理由を完全には理解していませんが、これで問題は解決します。
すでに持っているものをきれいにする必要がある場合は、次の方法でアンインストールできます。
pip3 uninstall statsmodels
依存関係があることを確認してください
pip3 install numpy scipy patsy pandas
次に、これら4つが最初にインストールされた後にのみ:
pip3 install statsmodels
次に、インポートとコードを進めます。
====さらに/交互に=====
ほとんどの場合、 virtualenv を使用することをお勧めします。また、独自のライブラリを制御できる独自の環境を作成できます。必要なものをすべて作成し、各プロジェクトに好きな名前を付けることができます。システムレベルとユーザーレベルでインストールされているpythonモジュールを組み合わせて使用している可能性があります。システムパッケージが更新されると、モジュールが変更される可能性があります。 statsmodelsの新しいユーザーバージョンと競合するscipyのシステムバージョンがあります。python 3.5の場合、venvをインストールする必要がありますが、3.6ではディストリビューションの一部になります。
最初に、python3を実行したときからのシステムパスを確認します。
python3
>>> import sys
>>> print(sys.path)
>>> quit()
次に、クリーンで独立した環境を作成し、同じことを行います。
Sudo apt install python3-venv
python3 -m venv ~/name_me
source ~/name_me/bin/activate
python3
>>> import sys
>>> print(sys.path)
>>> quit()
基本ライブラリへのパスが必要ですが、インストールされている追加パッケージへのパスは避けてください。それらをインストールするクリーンな環境があります。次に、変更されたシェルプロンプトで検出できるはずのこのvirtualenvから、以前からpipインストールを実行し、それらが機能するかどうかを確認できます。
pip install numpy scipy patsy pandas
pip install statsmodels
python
>>> import statsmodels.api as sm
そして、完了したら、virtualenvを終了できます
deactivate
この問題は、statsmodelsのgihubリポジトリバージョンをインストールすることで解決しました。
pip3 install git+https://github.com/statsmodels/statsmodels.git