install numpy

  1. Python 虽然是一门脚本语言,但借助诸如 Numpy、Scipy 等功能强大的 package(包),如今 Python 在科学计算、机器学习、数据挖掘方面都有较为广泛的应用。本教程介绍如何在 Windows 中安装常用的 Python 机器学习包,包括 NumPy、pandas、SciPy、StatsModels、scikit-learn、matplotlib。

    常用的 Python 机器学习包

    本教程涉及的 Python 机器学习包(具体的使用可点击链接查阅官方文档,本教程只介绍如何安装):

    NumPy:Python中科学计算的基础包;
    pandas:提供高性能,易于使用的数据结构和数据分析工具;
    SciPy:基于Python,用于数学、科学、工程的软件;
    StatsModels:用于探索数据、估计统计模型、统计检验;
    scikit-learn:提供经典的机器学习算法用于数据挖掘和数据分析;
    matplotlib: 2D绘图库,可绘制高质量的图片。

    安装pip

    pip 是一个安装和管理 Python 包的工具,若按照教程Python安装与基本使用安装了 Python 2.7.11,则默认已经安装了 pip,在开始菜单中找到“运行”(或者使用键盘快捷键Win + r),输入“cmd”,打开Windows 命令提示符,执行如下命令进行检验:

    pip --version
    

    若已经装好了pip,运行结果如下图如下,显示已安装的版本:

    install numpy_第1张图片检查是否安装好了pip

    若已安装好 pip,则可以跳过该部分剩余内容,开始安装 Python 包。
    如果还未安装pip,则按照如下步骤进行安装:

    1. 下载安装文件
    右键点击链接https://bootstrap.pypa.io/get-pip.py,选择另存为。如果无法访问,可进入网盘下载:http://pan.baidu.com/s/1c0NL4eW。

    2. 进行安装
    为方便,我们将上述文件保存在D盘根目录下(即d:\get-pip.py),在cmd中,依次执行如下三条代码:

    d:
    cd d:\
    python get-pip.py
    

    安装成功后如下图所示,提示“Successfully installed pip-xxx”:

    install numpy_第2张图片成功安装pip

    安装 Python 包

    安装好pip后,就可以在 cmd 中使用 pip install package-name 的方式来方便地在线安装 python 包了。例如,我们要安装一个名为 six 的包,只需要在 cmd 中执行如下命令即可:

    pip install six
    

    读者实践时,发现在线安装 Numpy、SciPy 等包时会遇到一些问题,可以解决但比较繁琐,因此推荐采用离线安装方式。

    Windows 的 Python 离线安装包可在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 中下载,下载后为 .whl 文件,可使用 pip install 离线安装包文件名 的命令进行安装。由于涉及的离线包比较多,挨个下载比较麻烦,读者可直接下载笔者已整理好的安装包(仅适用于 Python 2.7 版本,下面的32位、64位指的是你所装的 Python 版本):

    • 32位安装包下载:http://pan.baidu.com/s/1eQM4xO2
    • 64位安装包下载:http://pan.baidu.com/s/1hqW95ZI

    以使用64位安装包为例,下载后解压,假设放置于D盘根目录下(d:\python-machine-learning-package-win-amd64),我们首先安装 Numpy,在 cmd 中执行如下命令进行安装(注意32位的安装命令有所不同,主要是文件名不同):

    d:
    cd d:\python-machine-learning-package-win-amd64
    pip install numpy-1.9.3+mkl-cp27-none-win_amd64.whl
    

    安装成功的话如下图所示,提示“Successfully installed numpy-1.9.3”:

    install numpy_第3张图片成功安装Numpy

    对于提示"You are using pip version 7.1.2, however version 8.0.3 is available",可以按照提示升级 pip,也可以选择忽略该信息,并不会影响 Python 包的安装与使用。

    安装好 Numpy 后,接着再依次执行如下命令安装其他Python包(需要额外安装一些依赖包,因此要安装的包比较多,此外请注意安装顺序。同时注意32位的安装命令有所不同,主要是文件名不同)。

    tab键的补全功能

    在 cmd 中,可以利用 tab 键补全文件名,例如要安装 six-1.10.0-py2.py3-none-any.whl,只需要先输入 pip install six,再按一下 tab 键,就能自动补全文件名了,省去复制文件名的步骤。

    pip install six-1.10.0-py2.py3-none-any.whl
    pip install python_dateutil-2.5.0-py2.py3-none-any.whl
    pip install pytz-2015.7-py2.py3-none-any.whl
    pip install pandas-0.16.2-cp27-none-win_amd64.whl
    pip install patsy-0.4.0-py2.py3-none-any.whl
    pip install scipy-0.16.1-cp27-none-win_amd64.whl
    pip install statsmodels-0.6.1-cp27-none-win_amd64.whl
    pip install scikit_learn-0.16.1-cp27-none-win_amd64.whl
    pip install pyparsing-2.0.7-py2.py3-none-any.whl
    pip install cycler-0.10.0-py2.py3-none-any.whl
    pip install matplotlib-1.5.1-cp27-none-win_amd64.whl
    

    至此,就完成了Python中常用机器学习包的安装。

    安装其他Python包

    前面说到,Windows 的 Python 离线安装包可在 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 中下载,如果要安装其他的包,可以到这里下载。需要注意的一点是依赖问题,如 matplotlib,所需的依赖都有列了出来,需要先安装这些依赖才能安装该 Python 包(其中的 setuptools 在安装 pip 时就有装好了)。

    install numpy_第4张图片Python包的依赖信息

    安装Python包可能遇到的问题

    在安装机器学习的 Python 包时,可能会遇到的一个问题是,在运行代码时会提示错误 "ValueError: numpy.dtype has the wrong size, try recompiling",这是因为 Python 包的版本问题,例如安装了较旧版本的 Numpy,但安装了较新版本的 SciPy。

    似乎没有很好的解决方法,一般方法是更新 Numpy,或者安装低版本的 SciPy(只是举例),本教程中给出的包虽然不是最新的版本,但笔者自己安装过,可以正常使用。

    另外 Python 中一个比较常见的问题是编码问题,若遇到类似“UnicodeEncodeError: 'ascii' codec can't encode character u'\u6211' in position 0: ordinal not in range(128)”的问题,可以在 Python 的安装目录(默认为C:\Python27)下的 Lib\site-packages 文件夹中新建一个文件sitecustomize.py,添加如下代码并保存:

     
           
    1. import sys
    2. sys.setdefaultencoding('gb2312')
    Python

    切记,该文件会更改 Python 的默认编码,以后出现类似的问题,可尝试将代码中的 gb2312 改为 utf-8 或 ascii ,然后再次尝试。

    附录

    本教程所提供的离线安装包的文件列表。

    32位安装包中包含如下文件:

    • matplotlib-1.5.1-cp27-none-win_amd64.whl
    • numpy-1.9.3+mkl-cp27-none-win_amd64.whl
    • pandas-0.16.2-cp27-none-win_amd64.whl
    • scikit_learn-0.16.1-cp27-none-win_amd64.whl
    • scipy-0.16.0-cp27-none-win_amd64.whl
    • statsmodels-0.6.1-cp27-none-win_amd64.whl
    • cycler-0.10.0-py2.py3-none-any.whl
    • patsy-0.4.0-py2.py3-none-any.whl
    • pyparsing-2.0.7-py2.py3-none-any.whl
    • python_dateutil-2.5.0-py2.py3-none-any.whl
    • pytz-2015.7-py2.py3-none-any.whl
    • six-1.10.0-py2.py3-none-any.whl

    64位安装包中包含如下文件:

    • matplotlib-1.5.1-cp27-none-win_amd64.whl
    • numpy-1.9.3+mkl-cp27-none-win_amd64.whl
    • pandas-0.16.2-cp27-none-win_amd64.whl
    • scikit_learn-0.16.1-cp27-none-win_amd64.whl
    • scipy-0.16.1-cp27-none-win_amd64.whl
    • statsmodels-0.6.1-cp27-none-win_amd64.whl
    • cycler-0.10.0-py2.py3-none-any.whl
    • patsy-0.4.0-py2.py3-none-any.whl
    • pyparsing-2.0.7-py2.py3-none-any.whl
    • python_dateutil-2.5.0-py2.py3-none-any.whl
    • pytz-2015.7-py2.py3-none-any.whl
    • six-1.10.0-py2.py3-none-any.whl

你可能感兴趣的:(Python)