即使在Conda环境中安装了软件包,Ipython Notebook也会显示Seaborn的Import Error

时间:2016-01-23 12:53:41

标签: ipython ipython-notebook anaconda seaborn jupyter-notebook

所以我试图将Ipython笔记本用于Anaconda(Windows10)。我进入了anaconda cmd并创建了一个新环境TryThis。我在这种环境下安装了Seaborn。然后我在conda cmd中运行Ipython命令。

   conda create --name TryThis python=2
   activate TryThis
   conda install seaborn
   ipython

当我跑步时

   import seaborn as sns

在这里执行好吧。

但是,如果我退出,然后运行

   ipython notebook

在conda cmd中继续在浏览器中的ipython笔记本中导入,它会抛出错误

---------------------------------------------------------------------------
 ImportError                               Traceback (most recent call last)
 <ipython-input-1-ed9806ce3570> in <module>()
  ----> 1 import seaborn as sns

 ImportError: No module named seaborn

我不明白出了什么问题。如果Seaborn在这个anaconda环境中,我在这个环境中启动了Ipython笔记本,而控制台中的Ipython可以识别它,为什么笔记本没有?

我可能正在做的事情是公然不正确的,但我刚开始使用anaconda!

2 个答案:

答案 0 :(得分:0)

类型:

!conda info

在你的笔记本中。检查default environment说的是什么。它应该与您可以导入seaborn的会话中的相同。

答案 1 :(得分:0)

首先尝试

  
    

conda install seaborn

  

重新启动您的Jupyther笔记本,看它是否有效。

如果您已经使用conda安装了Seaborn,请确保在启动Jupyter笔记本时,它使用Anaconda路径。 它通常在您启动Jupyter笔记本时打印出终端中的路径。

我之前遇到过这个问题,原因是我的Jupyter笔记本正在使用.graphlab(Dato / Turi / Apple的工具)中的路径。因此即使我使用conda insatall seaborn正确安装了Seaborn,Jupyter笔记本也无法找到该库。

您可能没有完全相同的问题,但根据您的描述,听起来您的问题有点类似。

当你从终端运行ipython时,如果你能够导入seaborn;如果您无法从Jupyter笔记本导入seaborn,请按照以下步骤操作:

  • 在终端上找到ipython路径
      
        

    哪个ipython

      
  • 现在,启动Jupyter笔记本并注意(在您的终端中)您的Jupyter笔记本使用的路径。
  • 如果您无法在Jupyter笔记本中导入seaborn,则很可能该路径与您之前看到的ipython路径不同。

一旦确认这是问题所在,那么您需要做的就是让Jupyter使用正确的路径。有各种方法可以做到这一点。我的方法是完全摆脱我的Anaconda安装,并使用pip安装jupyer笔记本。

  
    

pip install jupyter

  

只要您使用pip安装了库(NumPy,SciPy,Pandas,Seaborn等),您的jupyter就可以导入这些库。在我看来,pip install *是获取Python的方法。