web-dev-qa-db-ja.com

Jupyter Notebook ImportError:「sklearn」という名前のモジュールがありません

ローカルマシンで実行しようとしています。エラーが発生します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ノートブックからは機能しません。

何か案は?

5
Droter

これは通常、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を確認してください。

4
minrk

パッケージを更新すると、問題が解決する場合があります

conda upgrade scikit-learn
0
Future2020