zoukankan      html  css  js  c++  java
  • [读书笔记] Python 数据分析 (十二)高级NumPy

    da 

    array: 一个快速而灵活的同构多维大数据集容器,可以利用这种数组对整块的数据进行一些数学运算

    • 数据指针,系统内存的一部分
    • 数据类型 data type/dtype
    • 指示数据大小的元组
    • stride: strides中保存的是当每个轴的下标增加1时,数据存储区中的指针所增加的字节数
      • In [6]: np.ones((3,4,5),dtype=np.float64).strides

          Out[6]: (160, 40, 8)

    ndarray数据结构:

    reshape()函数 -1参数,该维度的的内容由原内容自动填充

    C vesu Fortran order:

    •  : row order
    • Fortran order: column order

    numpy 的 ndarray 是row order, reshape()和ravel()函数都接受一个参数进行C/F转换

     数组重构

    更加简洁的数组重构方式:c_, r_c 

    数组重复/复制

    repeat: 重复数组中的每一个元素特定次数,可以为每一个元素指定重复次数

    tile:在指定轴上重复复原

    Take and Put

    取出数组中的特定元素

    Broadcasting/广播

    沿X轴传播和沿Y轴传播有细微的差别

    np.newaxis()加入新轴

    Advanced ufunc Usage

    ufunc 是universal function的缩写,它是一种能对数组的每个元素进行操作的函数,Numpy内置的许多ufunc函数都是在C语言级别实现的,因此它们的计算速度非常快

    • np.add.reduce: 加和操作
    • np.add.accumulate: 和reduce类似,返回和输入数组形状相同,保存所有的中间计算结果

    • np.multiply.outer: element-wise 点积

     用户自定义函数

    frompyfunc

    Structured and Record Arrays


    使用dtype创建结构化的表格型数据,类似C中的结构

    numpy 排序

    argsort:

    lexsort: multiple sort

    searchsorted

    • 查找已排序数组中的元素,返回查找值在数组中应该插入的位置,该种插入方式可以使得数组仍是有序的
    • 也可以用来查找元素在一定区间中的位置

     Speed Performance: 

    Cpython

  • 相关阅读:
    Python中使用PyMySQL
    python实现通用json导入到mysql
    python实现通用excel导入到mysql
    java优化几个小步骤
    日志添加request-id
    Nginx优化
    tomcat8 性能优化参考
    excel空格处理
    spring boot swagger ui使用 nginx 部署后无法使用问题
    Swagger2多包扫描
  • 原文地址:https://www.cnblogs.com/vincentcheng/p/8490791.html
Copyright © 2011-2022 走看看