zoukankan      html  css  js  c++  java
  • python库介绍------Numpy

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

       NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。

       NUMPY提供高性能,多维数组对象和工作工具使用这些数组。它的数组可以用作高效的通用多维容器数据。可以定义任意的数据类型。
    1.先来看一下NumPy的数据类型
     (1)带符号整数类型
        int8: 1-byte       int16: 2-byte    int32: 4-byte    int64: 8-byte

      (2) 无符号整数类型

        uint8: 1-byte    uint16: 2-byte    uint32: 4-byte   uint64: 8-byte

      (3)C语言整数类型

         int_     intc     intp   short   long   longlong

    (4)浮点型floating    布尔型Boolean      复数类型Complex    字符串类型str     日期时间类型data  and time  原始数据块Raw data block

      (5)内置数据类型的字符代码

    •      ?:boolean,                                                                                     例如:
    •    b: signed byte                        i4: 32-bit signed integer
    •      B: unsigned byte                                                                       u2: 16-bit signed integer
    •      i: signed integer                                     =========》                   f8: 64-bit floating-point
    •      u: unsigned integer                                                                   U25: 25-character string
    •      f: floating-point                                                                               V10: 10-byte wide data
    •    c: complex
    •    m: timedelta
    •    M: datetime
    •    O: Python object   
    •    S: (byte) string
    •    U: unicode string
    •    V: raw data (void)

    接下来我们将举例说明NumPy的对数组的各种使用方法:

    (1)ndarray  -----多维度数组

     解释:n--数字number  d--维度dimensional     array--数组


    先看一下基本例子:

       ndarray具有的属性:

    dtype  shape   ndim  size  itemsize  nbytes  flags  base  

      下面依次介绍属性使用:

       (2)axis

                为具有不止一个维度的数组定义轴。二维数组有两个对应的轴:第一个通过行(轴0)垂直向下运行,以及第二横跨柱(轴1)水平运行

    例如:[ [ [ 0 1 2]

         [ 3 4 5] ]

          [ [ 6 7 8]

          [ 9 10 11] ] ]

    sum(axis=0): [ [ 6 8 10] [12 14 16] ]

    sum(axis=1): [ [ 3 5 7] [15 17 19] ]

    sum(axis=3): [ [ 3 12] [21 30] ]

    (3)创建多维度数组

      ①通过np.array------这个就是上面说的了,很简单

    ②通过函数

    函数方法有:empty     zeros  ones  asarray  fromiter  arange      full   eye  random.random  linspace

    实现也类似:

    (4)多维数组的重塑:

     

    (5)索引和切片

    整数数组索引可以构造任意数组

    使用来自另一个数组的数据

     
     
  • 相关阅读:
    mybatis批量操作
    获取datagrid中编辑列combobox的value值与text值
    easyui editor combobox multiple
    Spring mvc Interceptor 解决Session超时配置流程
    Error In Work
    jquery.min.map 404 (Not Found)出错的原因及解决办法
    Ubuntu 14.10安装SecureCRT 7.3
    UEFI引导修复教程和工具
    MySQL 模拟Oracle邻接模型树形处理
    Linux下玩转Dota2
  • 原文地址:https://www.cnblogs.com/qianshuixianyu/p/9238115.html
Copyright © 2011-2022 走看看