Windows下安装scikit-learn

时间:2023-03-08 17:18:10

Windows下安装scikit-learn


准备工作


  • Python (>= 2.6 or >= 3.3),
  • Numpy (>= 1.6.1)
  • Scipy (>= 0.9),
  • Matplotlib(可选).

NumPy

NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。

Scipy

SciPy是一款方便、易于使用、专为科学和工程设计的Python工具包.它包括统计,优化,整合,线性代数模块,傅里叶变换,信号和图像处理,常微分方程求解器等等.

Matplotlib

matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。

不建议使用pip安装scipy和numpy。

也可以使用第三方的集成开发平台:Anaconda ,已经集成好了所需的库。

下载地址

Pythonhttps://www.python.org/downloads/

Numpyhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

Scipyhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

Matplotlibhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib

scikit-learnhttp://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn

本次安装中我选择的是:

  • python3.5
  • numpy-1.11.1-cp35-cp35m-win_amd64.whl
  • scipy-0.18.0-cp35-cp35m-win_amd64.whl
  • matplotlib-2.0.0b3-cp35-cp35m-win_amd64.whl
  • scikit_learn-0.17.1-cp35-cp35m-win_amd64.whl

文件名的组成为

库名-库版本号-python版本-平台

例如:

scikit_learn-0.17.1-cp35-cp35m-win_amd64.whl

代表的是

scikit-learn 版本号 0.17.1

cp35 代表 python3.5

win_amd64 代表64位windows系统

安装


首先安装python, 下载好的exe文件右键管理员运行安装,记得勾选加入到环境变量

然后依次安装numpyscipymatplotlib

将下载好的文件放到一个文件夹里,比如 C:\src\

开始->运行->cmd 打开命令行

cd c:\src		#切换目录到src
dir #列出目录下的文件

检查是否缺少文件,不缺少进行下一步:

pip install .\numpy-1.11.1-cp35-cp35m-win_amd64.whl         #安装numpy

如果正确安装会返回这些信息:

Processing c:\src\numpy-1.11.1-cp35-cp35m-win_amd64.whl
Installing collected packages: numpy
Successfully installed numpy-1.11.1+mkl

同样方法安装 scipymatplotlib

pip install .\scipy-0.18.0-cp35-cp35m-win_amd64.whl         #安装scipy
pip install .\matplotlib-2.0.0b3-cp35-cp35m-win_amd64.whl #安装matplotlib

最后安装 scikit-learn

pip install .\scikit_learn-0.17.1-cp35-cp35m-win_amd64.whl         #安装scikit-learn

测试


简单的测试以下是否安装成功:

python
>>> from sklearn import datasets
>>> iris = datasets.load_iris()
>>> digits = datasets.load_digits()
>>> print(digits.data)
[[ 0. 0. 5. ..., 0. 0. 0.]
[ 0. 0. 0. ..., 10. 0. 0.]
[ 0. 0. 0. ..., 16. 9. 0.]
...,
[ 0. 0. 1. ..., 6. 0. 0.]
[ 0. 0. 2. ..., 12. 0. 0.]
[ 0. 0. 10. ..., 12. 1. 0.]] >>> digits.target
array([0, 1, 2, ..., 8, 9, 8])