美文网首页我爱编程
利用Python进行数据分析随笔记 四 (2)

利用Python进行数据分析随笔记 四 (2)

作者: 33jubi | 来源:发表于2018-08-07 16:51 被阅读0次

    tags:

    • 第四章 NumPy基础:数组和矢量计算
    • 通用函数:快速的元素级数组函数

    通用函数:快速的元素级数组函数

    通用函数(ufunc)是一种对ndarray中的数据执行元素级运算的函数。

    一元(unary)ufunc:

    arr=np.arange(10)
    
    arr
    Out[5]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
    
    np.sqrt(arr)#根号
    Out[6]: 
    array([ 0.        ,  1.        ,  1.41421356,  1.73205081,  2.        ,
            2.23606798,  2.44948974,  2.64575131,  2.82842712,  3.        ])
    
    np.exp(arr)#e^x
    Out[7]: 
    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])
    

    另外一些(如add或者maximum接受2个数组(因此也叫二元(binary)ufunc),并返回一个结果数组:

    
    x=randn(8)
    
    y=randn(8)
    
    x
    Out[10]: 
    array([ 0.55104656, -0.70358303,  0.29153702, -0.25088748,  0.51501236,
           -0.00691815,  0.45884698, -0.27609025])
    
    y
    Out[11]: 
    array([ 0.10506643, -0.22471682, -1.4625159 , -0.83227315,  1.14981524,
           -1.02180453,  0.08551423,  1.28584017])
    
    np.maximum(x,y)#元素最大值
    Out[12]: 
    array([ 0.55104656, -0.22471682,  0.29153702, -0.25088748,  1.14981524,
           -0.00691815,  0.45884698,  1.28584017])
    
    arr=randn(7)*5
    
    np.modf(arr)#Python内置函数divmod的矢量化版本,用于浮点数数组的小数和帧数部分。
    Out[14]: 
    (array([ 0.18968524,  0.67265347, -0.53499458,  0.70031969,  0.90946035,
             0.30079732, -0.50185024]), array([ 8.,  1., -8.,  0.,  7.,  0., -0.]))
    
    arr
    Out[15]: 
    array([ 8.18968524,  1.67265347, -8.53499458,  0.70031969,  7.90946035,
            0.30079732, -0.50185024])
    
    函数 说明
    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 执行元素级的真值逻辑

    相关文章

      网友评论

        本文标题:利用Python进行数据分析随笔记 四 (2)

        本文链接:https://www.haomeiwen.com/subject/anyavftx.html