clllll  

Python的默认实现(CPython)处理某些操作非常慢,因为动态性和解释性,

CPython 在每次循环必须左数据类型的检查和函数的调度。。在编译是进行这样的操作。就会加快执行速度。

通用函数介绍

Numpy 为很多类型的操作提供了方便的、静态类型的、可编译程序的接口。叫做向量操作。
对数组的操作会用于数组的每一个元素。

也可以对俩个数组进行运算

探索通用函数

俩种存在形式

  • 一元通用函数 unary ufunc 对单个输入操作
  • 二元通用函数 binary ufunc 对俩个输入操作
    1)数组的运算
    Numpy 通用函数的使用方式非常自然,就是Python原生的算术运算符。加 减 乘 除
    | Operator | Equivalent ufunc | Description |
    | -------- | ---------------- | ----------------------------------- |
    | + | np.add | Addition (e.g., 1 + 1 = 2) |
    | - | np.subtract | Subtraction (e.g., 3 - 2 = 1) |
    | - | np.negative | Unary negation (e.g., -2) |
    | * | np.multiply | Multiplication (e.g., 2 * 3 = 6) |
    | / | np.divide | Division (e.g., 3 / 2 = 1.5) |
    | // | np.floor_divide | Floor division (e.g., 3 // 2 = 1) |
    | ** | np.power | Exponentiation (e.g., 2 ** 3 = 8) |
    | % | np.mod | Modulus/remainder (e.g., 9 % 4 = 1) |
    2)绝对值

    np.absolute

    3)三角函数

    逆三角函数

4)指数和对数

指数运算的逆运算, 即对数运算
np.log 以自然常数 e 为底数的对数

高级的通用函数特性

  • 指定输出
    out参数
  • 聚合
    reduce 方法会对给定的元素和操作 重复执行,直至得到单个的结果


如果需要保存计算的中间结果使用 accumulate

  • 外积
    任何通用函数都可以使用outer方法获得俩个不同输入 数组 所有元素对 的函数运算结果。
    可以用一行代码实现一个乘法表

聚合:最小值、最大值和其他值

  • 数组值求和

    sum 和 np.sum不一样。np.sum更快。np.sum 知道数组的维度
  • 最小值,最大值
    np.min np.max
  • 多维度聚合
    默认是整个数组的聚合结果,可以按照某个维度聚合。 参数 axis
  • 其他聚合函数
    | Function Name | NaN-safe Version | Description |
    | ------------- | ---------------- | ----------------------------------------- |
    | np.sum | np.nansum | Compute sum of elements |
    | np.prod | np.nanprod | Compute product of elements |
    | np.mean | np.nanmean | Compute mean of elements |
    | np.std | np.nanstd | Compute standard deviation |
    | np.var | np.nanvar | Compute variance |
    | np.min | np.nanmin | Find minimum value |
    | np.max | np.nanmax | Find maximum value |
    | np.argmin | np.nanargmin | Find index of minimum value |
    | np.argmax | np.nanargmax | Find index of maximum value |
    | np.median | np.nanmedian | Compute median of elements |
    | np.percentile | np.nanpercentile | Compute rank-based statistics of elements |
    | np.any | N/A | Evaluate whether any elements are true |
    | np.all | N/A | Evaluate whether all elements are true |
posted on   llcl  阅读(112)  评论(0编辑  收藏  举报
努力加载评论中...
 
点击右上角即可分享
微信分享提示