zoukankan      html  css  js  c++  java
  • Windows下python安装Matplotlib、Numpy和Scipy模块

    Scikit-learn运行需要matplotlib、Numpy和Scipy等模块,python的包的资源链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/

    Pip

    python包以前提供exe文件和wheel文件,但是最近只提供wheel文件,需要安装setuptools,安装pip,先下载两个文件 ez_setup.py和get-pip.py这两个文件,在cmd下运行。

    安装pip需要在Python的官网上去下载,下载地址是:https://pypi.python.org/pypi/pip#downloads。下载完成之后,解压到一个文件夹,用CMD控制台进入解压目录,输入:

    python setup.py install

    安装好之后,我们直接在命令行输入pip,同样会显示‘pip’不是内部命令,也不是可运行的程序。因为我们还没有添加环境变量。

    按照之前介绍的添加环境变量的方法,我们在PATH最后添加:

    C:Python34Scripts;

    到现在我们才算完整安装好了pip

    打开命令行窗口,输入下面的命令:

    pip install wheel

    这时pip会自动在网络上下载安装wheel。安装完成后可以敲下面的命令查看是否安装成功:

    pip freeze

    Numpy

    提供一个Numpy的exe文件,http://sourceforge.net/projects/numpy/files/NumPy

    其中Numpy提供的函数如下:

    1.array()方法 创建数据
    2.shape属性 数组的形状
    3.reshape()方法 创建指定形状的新数组
    4.dtype属性 得到数组的元素类型
    5.arange()方法 通过指定开始值、终值和步长创建等差数组
    6.linspace()方法 通过指定开始值、终值和元素个数创建表示等差数列的一维数组(可通过endpoint指定是否包含终值)
    7.logspace()方法 创建等比数列(base设置基数)
    8.zeros(),ones(),empty()方法 创建指定形状的数组
    9.zeros_like(),ones_like(),empty_like()方法 创建与参数形状和类型相同的数组
    10.frombuffer(),fromstring(),fromfile()方法 从字节序列或文件创建数组
    11.fromfunction()方法 通过预先定义的函数来创建数组
    12.s_对象 创建数组下标
    13.tostring(),tofile()方法 将数组以二进制的方式转换成字符串或者写入文件中
    14.item()方法 返回标准python类型
    15.frompyfunc() 将计算单个值得函数转换为一个能对数组中每个元素进行计算的ufunc函数
    16.ogrid对象 快速产生能进行广播运算的数组
    函数库
    17.sum()求和,mean()求平均值,average()求平均(无out,dtype参数,有weight参数),std()标准差,var()方差
    18.min()最小值,max()最大值,ptp()最大最小之差,argmax()最大值下标,argmin()最小值下标
    19.sort()排序
    多项式
    20.poly1d一元多项式对象,poly1d将系数转换为一元多项式对象
    21.deriv()方法 多项式微分,integ()方法 多项式积分
    22.roots()函数 计算多项式的根
    23.poly函数 将根转换为多项式的系数
    分段函数
    24.where(condition,y,z)
    25.select(condlist, choicelist, default=0)
    26.piecewise(x, condlist, funclist)
    统计函数
    27.unique()返回其参数数组中所有不同的值,并且按照从小到大的顺序排列
    28.bincount()函数 对整数数组中各个元素出现的次数进行统计
    29.histogram()函数 对一维数组进行直方图统计,参数列表:
    histogram(a, bins=10, range=None, normed=False, weights=None)
    线性代数
    各种乘积运算
    30.dot() 计算矩阵的乘积
    结果数组中的每个元素都是:数组a最后一维上的所有元素与数组b倒数第二维上的所有元素的乘积和
    31.inner()
    结果数组中的每个元素都是:数组a和b最后一维的内积
    32.outer() 只按照一维数组进行计算
    解线性方程组
    33.linalg模块:numpy线性代数模块
    34.solve() 求解多元一次方程组
    35.lstsq() 更一般化的求解多元一次方程组,a可以不是方阵
    文件存取
    36.tofile()方法 将数组数据以二进制格式写进文件
    37.fromfile() 读取文件,需要制定dtype类型
    38.load(),save() 用numpy专用的二进制格式保存数据
    39.savez() 保存多个数组
    40.savetxt(),loadtxt() 读写保存一维和二维数组的文本文件

    Scipy

    提供一个Scipy的exe文件,http://sourceforge.net/projects/scipy/files/Scipy

    matplotlib

    提供一个Matplotlib的exe文件,http://sourceforge.net/projects/matplotlib/files/matplotlib/

    在运行代码时发现matplotlib不能正常运行
    raise ImportError("matplotlib requiresdateutil")
    ImportError: matplotlib requires dateutil

    需要安装dateutil,下载地址http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-dateutil

    此后又出现错误:
    raise ImportError("matplotlib requirespyparsing")
    ImportError: matplotlib requires pyparsing

    需要安装pyparsing,下载地址http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyparsing

    安装完又出现错误:
    No module name six

    需要安装scipy,从pythonx.xLibsite-packagesscipylib中的six.py six.pyc six.pyo三个文件拷贝到pythonx.xLibsite-packages目录下。便可以解决啦!

    “If you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime.”
  • 相关阅读:
    Nginx有哪些作用?
    MYSQL如何优化?
    jdk1.8新特性
    [javase基础] JDK JRE JVM的区别?
    JDBC中如何进行事务处理?
    JDBC、ibatis(mybatis)、Hibernate有什么不同?
    java面试题最容易犯错
    Spring高频率面试题
    python pip whl安装和使用
    深入理解 Linux的进程,线程,PID,LWP,TID,TGID
  • 原文地址:https://www.cnblogs.com/Scorpio989/p/4743634.html
Copyright © 2011-2022 走看看