如何在Python中安装和使用scikit-learn

时间:2018-11-07 21:35:55

标签: python pandas scikit-learn pip miniconda

请提前注意:我尝试了其他线程中的建议,但到目前为止,还没有找到任何有用的方法(12

我收到了一个我想在机器上运行的熊猫文件。在一开始,代码引用了sklearn包。

import re
from sklearn.decomposition import FactorAnalysis
from sklearn import svm

但是,我确实在运行此单元格时收到以下错误:

ModuleNotFoundError: No module named 'sklearn.decomposition'

我的Python目录中确实有scikit_learn-0.19.0-py3.6.egg-info和sklearn软件包,所以我不确定为什么它不起作用。我尝试重新安装它,但是两者都...

conda install scikit-learn

...和...

pip install scikit-learn

...不工作。前者使我的Python崩溃(弹出窗口告诉我它已崩溃),后者产生了许多错误消息:

>pip install scikit-learn
Requirement already satisfied: scikit-learn in c:\programdata\...\lib\site-packages
Exception:
Traceback (most recent call last):
  File "C:\ProgramData\...\lib\site-packages\pip\basecommand.py", line 215, in main
    status = self.run(options, args)
  File "C:\ProgramData\...\lib\site-packages\pip\commands\install.py", line 335, in run
    wb.build(autobuilding=True)
  File "C:\ProgramData\...\lib\site-packages\pip\wheel.py", line 749, in build
    self.requirement_set.prepare_files(self.finder)
  File "C:\ProgramData\...\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "C:\ProgramData\...\lib\site-packages\pip\req\req_set.py", line 666, in _prepare_file
    check_dist_requires_python(dist)
  File "C:\ProgramData\...\lib\site-packages\pip\utils\packaging.py", line 48, in check_dist_requires_python
    feed_parser.feed(metadata)
  File "C:\ProgramData\...\lib\email\feedparser.py", line 175, in feed
    self._input.push(data)
  File "C:\ProgramData\...\lib\email\feedparser.py", line 103, in push
    self._partial.write(data)
TypeError: string argument expected, got 'NoneType'
You are using pip version 9.0.1, however version 18.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

有什么想法可以使它正常工作吗?谢谢

4 个答案:

答案 0 :(得分:3)

尝试运行最后一条命令以首先升级pip吗?

pip install --upgrade pip

然后再安装scikitlearn。并可能根据您在环境中使用的python版本尝试此操作:

pip3 install scikit-learn

答案 1 :(得分:1)

解决了。

  • 已成功使用this线程回滚到pip v9。
  • 已卸载scikit-learn(当时为v0.19)。必须使用管理员模式来避免前面提到的PermissionError
  • 再次安装(版本为v0.2)

代码现在可以使用了,感谢所有贡献者。

答案 2 :(得分:0)

如果您使用的是Linux ...

1)。下载水蟒https://www.anaconda.com/download/#download

2)。转到下载文件的位置,然后键入bash Anaconda-latest-Linux-x86_64.sh

新的anaconda已经安装了scikit-learn。

如果您需要像我一样的旧版本的python,可以输入

来安装该版本。

/etc/

答案 3 :(得分:0)

实际上,我最近在Windows10中遇到了针对python3的相同问题,然后尝试使用它对我有用。

1.  python -m pip install -U pip setuptools

2.  pip install scikit-learn

enter image description here