zoukankan      html  css  js  c++  java
  • numpy的通用函数:快速的元素级数组函数

    通用函数(ufunc)是对ndarray中的数据执行元素级运算的函数。可看作简单函数的矢量化包装。

    一元ufunc

    sqrt对数组中的所有元素开平方

    exp对数组中的所有元素求指数

    In [93]: arr = np.arange(10)
    
    In [94]: np.sqrt(arr)
    Out[94]:
    array([0.        , 1.        , 1.41421356, 1.73205081, 2.        ,
           2.23606798, 2.44948974, 2.64575131, 2.82842712, 3.        ])
    
    In [95]: np.exp(arr)#exp是求以e(常数2.718281)为底的arr[index]为幂的指数
    Out[95]:
    array([1.00000000e+00, 2.71828183e+00, 7.38905610e+00, 2.00855369e+01,
           5.45981500e+01, 1.48413159e+02, 4.03428793e+02, 1.09663316e+03,
           2.98095799e+03, 8.10308393e+03])

    二元ufunc

    maximum 比较多个数组相同位置的元素,取大的值。注意,相互比较的数组shape必须一致

    In [108]: x = np.random.randn(8)
    
    In [109]: y = np.random.randn(8)
    
    In [110]: z = np.random.randn(8)
    
    In [111]: np.maximum(x,y)
    Out[111]:
    array([-0.01345165,  1.2966861 ,  1.92527939,  0.67587486, -0.51879301,
            0.03009451,  1.06056746, -0.27034234])
    
    In [112]: np.maximum(x,y,z)
    Out[112]:
    array([-0.01345165,  1.2966861 ,  1.92527939,  0.67587486, -0.51879301,
            0.03009451,  1.06056746, -0.27034234])

    minimum 

    modf 分离整数和小数

    In [100]: arr = np.random.randn(7)*5
    In [103]: np.modf(arr)
    Out[103]:
    (array([ 0.57608342,  0.6771948 , -0.18724925, -0.21329855, -0.28322408, 0.87645773, -0.89368417]),
     array([ 1.,  3., -0., -2., -4.,  0., -2.]))

    下边将会给出两个通用函数表格,一元ufunc和二元ufunc

    函数说明
    abs、fabs 计算整数、浮点数或复数的绝对值。对应非复数,可以使用更快的fabs
    sqrt 计算各元素平方根,相当于array * * 0.5
    square 计算各元素平方,相当于array * * 2
    exp 计算各元素的指数
    log、log10、log2、log1p 分别以自然对数(底数e)、10、2、(1+x)的对数
    sign 计算各元素的正负号:1(正数)、0(零)、-1(负数)
    ceil 计算各元素的ceiling值,即大于等于该值的最小整数
    floor 计算各元素的floor值,即小于等于该值的最大正数
    rint 将各元素值四舍五入到最接近的整数,保留dtype
    modf 将数组的小数和整数部分已两个独立数组的形式返回
    isnan 返回一个表示“哪些是NAN”的布尔型数组
    isfinite、isinf 返回一个表示“哪些是finite、inf”的布尔型数组
    cos、cosh、sin、sinh、tan、tanh 普通型和双曲线三角函数
    arccos、arccosh、arcsin、arcsinh、arctan、arctanh 反三角函数
    logical_not 计算各元素not x的真值,相当于-arr
    函数说明
    add 将数组中对应的元素相加
    subtract 从第一个数组中的元素减去第二个数组中的元素
    multiply 数组元素相乘
    divide、floor_dixide 除法、向下圆整除法(丢弃余数)
    power 对第一个数组中元素A,根据第二个数组中的相应位置元素B,计算A^B
    maximum、fmax 元素级的最大值计算,fmax将忽略NaN
    minimum、fmin 元素级的最小值计算,fmin将忽略NaN
    mod 元素级的求模计算,(除法的余数)
    greater、greater_equal、less、less_equal、equal、not_equal 执行元素级的比较运算,最终产生布尔型数组。相当于中缀运算符>、>=、<、<=、==、!=
    logical_and、logical_or、logical_xor 执行元素级的真值逻辑
  • 相关阅读:
    React Native配置和使用
    使用ES6语法重构React代码
    git 起点
    Win32API程序中自建按钮
    C语言中数组与指针
    我的第一个博客
    Solr6.5配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer (二)
    Solr6.5在Centos6上的安装与配置 (一)
    PHP版微信公共平台消息主动推送,突破订阅号一天只能发送一条信息限制
    MariaDB+Keepalived双主高可用配置MySQL-HA
  • 原文地址:https://www.cnblogs.com/zuoshoushizi/p/8724617.html
Copyright © 2011-2022 走看看