Python ModuleNotFoundError:没有名为';sklearn';

Python ModuleNotFoundError:没有名为';sklearn';,python,scikit-learn,anaconda,package,conda,Python,Scikit Learn,Anaconda,Package,Conda,我想导入sklearn,但显然没有模块: ModuleNotFoundError: No module named 'sklearn' 我正在使用Anaconda和python3.6.1;我到处都查过了,但还是找不到答案 当我使用命令时: conda install scikit learn这难道不管用吗? anaconda在哪里安装软件包? 我在检查python库中的框架,但没有关于sklearn only numpy和scipy的内容 请帮助,我对使用python软件包很陌生,尤其是通过a

我想导入sklearn,但显然没有模块:

ModuleNotFoundError: No module named 'sklearn'
我正在使用Anaconda和
python3.6.1
;我到处都查过了,但还是找不到答案

当我使用命令时:
conda install scikit learn
这难道不管用吗?
anaconda在哪里安装软件包?

我在检查python库中的框架,但没有关于sklearn only numpy和scipy的内容


请帮助,我对使用python软件包很陌生,尤其是通过anaconda。

您可以使用
pip
安装软件包,即使您使用的是anaconda:

这应该适用于安装软件包

对于Python3.x,只需使用
pip3

pip3 install -U scikit-learn scipy matplotlib

简介


使用水蟒时,需要了解工作环境

然后,在Anaconda提示符(base)中,需要使用以下代码:

conda $command -n $ENVIRONMENT_NAME $IDE/package/module
$command-我打算使用的命令()

$ENVIRONMENT NAME-环境的名称(如果在根目录下工作,
conda$command$IDE/package/module
就足够了)

$IDE/package/module-IDE或包或模块的名称


解决方案


如果您想将其安装到根目录中,则遵循以下操作-(Python(>=2.7或>=3.4)、NumPy(>=1.8.2)、SciPy(>=0.13.3)。)-以下将解决问题:

conda install scikit-learn
假设一个人在名为ML的环境中工作

那么,以下几点可以解决问题:

conda install -n ML scikit-learn
注意:如果需要安装/更新软件包,逻辑与简介中提到的相同。如果你需要更多的信息


如果上面的方法不起作用,在Anaconda提示符上也可以使用pip(),因此下面的方法可能会有所帮助

pip install scikit-learn

我尝试了很多东西,但最后,包括用自动化工具卸载。所以,我已经手动卸载了scikit learn

sudo rm -R /home/ubuntu/.local/lib/python3.6/site-packages/sklearn
sudo rm -R /home/ubuntu/.local/lib/python3.6/site-packages/scikit_learn-0.20.0-py3.6.egg-info
并使用pip重新安装

sudo pip3.6 install -U scikit-learn

希望能帮助别人

这件事发生在我身上,我尝试了所有可能的解决方案,但没有成功

最后我意识到问题出在Jupyter笔记本环境上,而不是sklearn

我通过在与sklearn相同的环境中重新安装Jupyter解决了这个问题

命令是:
conda install-c anaconda ipython
。完成…

原因 Conda和pip在~/anaconda3/envs/$ENV/lib/python3.7/site-packages下安装scikit learn,但Jupyter notebook在~/anaconda3/lib/python3.7/site-packages下查找该软件包

因此,即使将环境指定为conda,它也不起作用

conda install -n $ENV scikit-learn # Does not work
解决方案 PIP3在~/anaconda3/lib/python3.7/site-packages下安装包

验证 在pip3之后,在Jupyter笔记本中

import sklearn
sklearn.__file__
~/anaconda3/lib/python3.7/site packages/sklearn/init.py'


如果你在python3.xxx上使用Ubuntu18.04或更高版本,那么试试这个命令

$ sudo apt install python3-sklearn 
然后试试你的命令。希望它能起作用

我做了以下几点:

import sys
!{sys.executable} -m pip install sklearn

安装这些==>>pip安装-U scikit学习scipy matplotlib 如果仍然得到相同的错误, 确保你的陈述正确无误。我在写合奏曲时犯了错误,所以,(检查拼写) 它的
应>>>来自sklearn.ensemble导入random ForestClassifier

anaconda中sklearn的另一个名称是scikit learn。只需打开您的anaconda navigator,转到环境,选择您的环境,例如tensorflow或任何您想要使用的环境,在卸载的软件包列表中搜索scikit_learn,应用它,然后您就可以在jupyter中导入sklearn。

我与作者有相同的问题,无论是否使用Anaconda,无论Python版本如何,都会遇到这个问题。每个人的环境都是不同的,但在我自己解决了它之后,我认为在某些情况下,这可能是由于安装了多个版本的Python。每个已安装的Python版本都有自己的\Lib\site packages\folder,其中可以包含该Python版本的一组唯一模块,IDE在其中查找不包含scikit学习的文件夹路径

尝试解决此问题的一种方法是:清除系统中所有其他Python版本及其缓存的/temp文件/系统变量,然后在任何地方只安装一个Python版本。然后安装依赖项Numpy和Scipy,最后安装Scikit学习

sudo rm -R /home/ubuntu/.local/lib/python3.6/site-packages/sklearn
sudo rm -R /home/ubuntu/.local/lib/python3.6/site-packages/scikit_learn-0.20.0-py3.6.egg-info
更详细的步骤:

  • 卸载所有Python版本及其启动器(例如,从Windows的“控制面板”中),但要保留的版本除外。删除Python目录中的所有旧Python版本文件夹——卸载不会删除所有文件
  • 从操作系统的环境变量中删除其他Python版本(在系统变量和用户变量部分下)
  • 清除临时文件。例如,对于Windows,删除所有AppData临时缓存文件(在C:\Users\YourUserName\AppData\Local\Temp中)。此外,您还可以对其他临时文件执行Windows磁盘清理,然后重新启动
  • 如果您的IDE支持它,请在设置中创建一个新的虚拟环境,然后将您唯一安装的Python版本设置为解释器
  • 在IDE中,首先从模块列表中安装依赖项Scipy和Numpy,然后安装Scikit学习
  • 正如其他一些人所建议的,关键是确保您的环境设置正确,所有内容都指向计算机上Sklearn软件包所在的正确库文件夹。有几种方法可以解决这个问题。我的方法更加激进,但事实证明,我的系统上有一个非常混乱的Python设置,所以我必须重新开始。

    解决了:

    上述情况无济于事。然后我简单地在Jypyter实验室中安装了sklearn from,尽管sklearn 0.0在“pip lis”中显示
    !pip install sklearn
    import sklearn
    
    import sys
    print(sys.path)
    
    conda install -n CourseraML seaborn scikit-learn pandas numpy matplotlib graphviz
    
    import cv2 as cv
    print(cv.__file__)
    
     sudo snap remove jupyter