我已经安装了一个created a virtualenvmachinelearn并在该环境中安装了一些python模块(pandas、scipy和sklearn)。
当我运行jupyter笔记本时,我可以在笔记本中导入pandas和scipy—但是,当我尝试导入sklearn时,会收到以下错误消息:
import sklearn
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-1-8fd979e02004> in <module>()
----> 1 import sklearn
ImportError: No module named 'sklearn'
我可以在命令行导入所有模块,因此我知道它们已成功安装:
(machinelearn) me@yourbox:~/path/to/machinelearn$ python -c "import pandas, scipy, sklearn"
(machinelearn) me@yourbox:~/path/to/machinelearn$
如何在运行virtualenv的jupyter笔记本中导入sklearn?
另一种方法是安装一个全局jupyter,但要指向作为后端运行的不同内核。
他们的文件中概述了这种方法: http://help.pythonanywhere.com/pages/IPythonNotebookVirtualenvs
如果链接断开,请复制以下内容: 你可以在你的IPython笔记本上使用virtualenv。遵循以下步骤:
将ipython内核模块安装到virtualenv中
现在运行内核“self install”脚本:
根据需要替换--name参数。
现在,您应该可以在IPython笔记本菜单中看到您的内核:kernel->;更改内核并切换到它(您可能需要在页面出现在列表中之前刷新页面)。从那时起,IPython将记住该笔记本使用哪个内核。
要将Jupyter笔记本与安装在该环境中的虚拟环境(使用virtualenvwrapper)和软件包一起使用,请执行以下步骤:
创建虚拟环境
激活虚拟环境
安装Jupyter和其他软件包
将新内核添加到Jupyter配置中
完成。现在可以在虚拟环境下使用Jupyter笔记本。
免责声明:问题已被回答,但隐藏在其中一个答复中。我搜索了一下,花了些时间找到了正确的答案。所以我只是总结一下,这样有同样问题的人就可以很容易地理解了。
您可能还没有在virtualenv中安装jupyter/IPython。请尝试以下操作:
并检查在您的
$PATH
中找到的jupyter
命令是否来自您的venv的bin
文件夹:对于powershell控制台中的windows用户,可以使用以下命令检查
$env:Path
中的jupyter
命令是否来自venv的Scripts
文件夹:编辑:如果这是问题所在,只需在venv中运行
python -m pip install jupyter
。编辑2:实际上,您可能还需要:
然后在jupyter用户界面中切换名为“my virtualenv name”的内核。
相关问题 更多 >
编程相关推荐