问题陈述
[我正在尝试运行一些需要scikit-learn 18.0
的旧python代码,但是我安装的当前版本是0.22
,所以我在运行代码时收到警告/无效数据。
我尝试过的事情
我尝试在终端python -m pip install scikit-learn==0.18
和conda
中都安装特定版本,但没有一个起作用。我只能安装v 0.22
。救命?谢谢。
终端错误
错误:无法通过scikit-learn学习车轮运行setup.py clean以获取scikit-learn无法建立scikit学习安装收集的软件包:scikit-learn找到现有的安装:scikit-learn 0.22.1卸载scikit-learn-0.22.1:成功卸载了scikit-learn-0.22.1运行setup.py安装以获取scikit-learn ...错误错误:命令错误,退出状态为1:
通过conda环境出错:
PackagesNotFoundError:以下软件包不能从当前频道:-scikit-learn == 0.18,这是在创建并激活新环境之后的]
我对发生的事情有一个猜测,我想您会在这里发现自己的问题:
首先让我们检查系统中安装的python版本:
python --version
> Python 3.8.0
如果您已准备好设置和更新,则应该是您当前的python版本,我想这就是问题所在。您可以从官方的pypi分发页面here中查看病态学习版本。如果您检查文档,将会看到该软件包用于2.7或3.5 python发行版。
因此,运行代码我想,最好的方法是使用virtualenv或virtualenvwrapper(我个人选择),您可以在其中创建干净的测试环境。
# On your terminal
# First let's check if python2 is installed
python2 --version > Python 2.7.17
# and pip
python2 -m pip --version
> pip 19.3 from /usr/lib/python2.7/site-packages/pip (python 2.7)
# Now create a virtual env using virtualenvwrapper and python2 as our main python
mkdir py2
mkvirtualenv -p python2 -a py2 py2
# After that the python command will be binded to your python2 installation
python --version
> Python 2.7.17
# Now lets install sckit lib
python -m pip install scikit-learn==0.18
python -m pip freeze
> DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
> scikit-learn==0.18
如果现在一切正常,您可以毫无问题地运行代码!
Remember !!!! Python 2是deprecated,应更新代码以使用最新的python发行版。
[此外,如果您不了解设置时间,那么virtualenv是使用python的好习惯!