ローカルマシンで実行しようとしています。エラーが発生しますImportError:jupyternotebookでのみ「sklearn」という名前のモジュールがありませんcarnd-term1envをアクティブまたは非アクティブにしてコマンドラインからpythonを使用すると、正常に動作します。
Sklearnをpip、apt-get、condaとともにインストールしました。 conda upgradescikit-learnも試してみました。 envがアクティブおよび非アクティブの両方。
(carnd-term1) matt@Malta:~/sdc$ conda upgrade scikit-learn
Fetching package metadata .........
Solving package specifications: .
# All requested packages already installed.
# packages in environment at /home/matt/anaconda3/envs/carnd-term1:
#
scikit-learn 0.18.1 np112py35_1
(carnd-term1) matt@Malta:~/sdc$ python3
Python 3.5.2 | packaged by conda-forge | (default, Jan 19 2017, 15:28:33)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sklearn
>>>
...: (carnd-term1) matt@Malta:~/sdc$ ipython
...: Python 3.5.2 | packaged by conda-forge | (default, Jan 19 2017, 15:28:33)
...: Type "copyright", "credits" or "license" for more information.
...:
...: IPython 5.1.0 -- An enhanced Interactive Python.
...: ? -> Introduction and overview of IPython's features.
...: %quickref -> Quick reference.
...: help -> Python's own help system.
...: object? -> Details about 'object', use 'object??' for extra details.
...:
...: In [1]: import sklearn
...:
...: In [2]: from sklearn.model_selection import train_test_split
...:
...: In [3]: (carnd-term1) matt@Malta:~/sdc$ ipython
...: ...: Python 3.5.2 | packaged by conda-forge | (default, Jan 19 2017, 15:28:33)
...: ...: Type "copyright", "credits" or "license" for more information.
...: ...:
...: ...: IPython 5.1.0 -- An enhanced Interactive Python.
...: ...: ? -> Introduction and overview of IPython's features.
...: ...: %quickref -> Quick reference.
...: ...: help -> Python's own help system.
...: ...: object? -> Details about 'object', use 'object??' for extra details.
...: ...:
...: ...: In [1]: import sklearn
...: ...:
...: ...: In [2]: from sklearn.model_selection import train_test_split
...: ...:
...: ...: In [3]:
Jupyterノートブックからは機能しません。
何か案は?
これは通常、2つが同じ環境ではないことを意味します。チェックするのに最適なのはsys.executable
であり、それが期待どおりであることを確認してください。期待するsys.executable
を使用していないのがノートブックの場合、最初のステップはPATHをチェックすることかもしれません。
which jupyter
which jupyter-notebook
最も可能性の高い問題は、ノートブックスタックがconda envにないことです。これは、次の方法で解決できます。
conda install notebook
2番目に可能性が高いのは、envをオーバーライドするkernelspec(たとえば、ipython kernel install --user
を使用)をインストールしたことです。カーネルがどこにあるかを確認できます。
jupyter kernelspec list
同じ環境にIPythonカーネルがインストールされていることを確認するには、次のようにします。
conda install ipykernel
ipython kernelspec install --sys-prefix
後でもう一度jupyter kernelspec list
を確認してください。
パッケージを更新すると、問題が解決する場合があります
conda upgrade scikit-learn