NumPy - 数学函数

  • 简述

    可以理解的是,NumPy 包含大量各种数学运算。NumPy 提供标准三角函数、算术运算函数、处理复数等。
  • 三角函数

    NumPy 有标准的三角函数,它以弧度返回给定角度的三角比。
    示例
    
    import numpy as np 
    a = np.array([0,30,45,60,90]) 
    print 'Sine of different angles:' 
    # Convert to radians by multiplying with pi/180 
    print np.sin(a*np.pi/180) 
    print '\n'  
    print 'Cosine values for angles in array:' 
    print np.cos(a*np.pi/180) 
    print '\n'  
    print 'Tangent values for given angles:' 
    print np.tan(a*np.pi/180) 
    
    这是它的输出 -
    
    Sine of different angles:
    [ 0.          0.5         0.70710678  0.8660254   1.        ]
    Cosine values for angles in array:
    [  1.00000000e+00   8.66025404e-01   7.07106781e-01   5.00000000e-01
       6.12323400e-17]                                                            
    Tangent values for given angles:
    [  0.00000000e+00   5.77350269e-01   1.00000000e+00   1.73205081e+00
       1.63312394e+16]
    
    arcsin, arcos,arctan函数返回给定角度的 sin、cos 和 tan 的三角逆。这些函数的结果可以通过以下方式验证numpy.degrees() function通过将弧度转换为度数。
    示例
    
    import numpy as np 
    a = np.array([0,30,45,60,90]) 
    print 'Array containing sine values:' 
    sin = np.sin(a*np.pi/180) 
    print sin 
    print '\n'  
    print 'Compute sine inverse of angles. Returned values are in radians.' 
    inv = np.arcsin(sin) 
    print inv 
    print '\n'  
    print 'Check result by converting to degrees:' 
    print np.degrees(inv) 
    print '\n'  
    print 'arccos and arctan functions behave similarly:' 
    cos = np.cos(a*np.pi/180) 
    print cos 
    print '\n'  
    print 'Inverse of cos:' 
    inv = np.arccos(cos) 
    print inv 
    print '\n'  
    print 'In degrees:' 
    print np.degrees(inv) 
    print '\n'  
    print 'Tan function:' 
    tan = np.tan(a*np.pi/180) 
    print tan
    print '\n'  
    print 'Inverse of tan:' 
    inv = np.arctan(tan) 
    print inv 
    print '\n'  
    print 'In degrees:' 
    print np.degrees(inv) 
    
    它的输出如下 -
    
    Array containing sine values:
    [ 0.          0.5         0.70710678  0.8660254   1.        ]
    Compute sine inverse of angles. Returned values are in radians.
    [ 0.          0.52359878  0.78539816  1.04719755  1.57079633] 
    Check result by converting to degrees:
    [  0.  30.  45.  60.  90.]
    arccos and arctan functions behave similarly:
    [  1.00000000e+00   8.66025404e-01   7.07106781e-01   5.00000000e-01          
       6.12323400e-17] 
    Inverse of cos:
    [ 0.          0.52359878  0.78539816  1.04719755  1.57079633] 
    In degrees:
    [  0.  30.  45.  60.  90.] 
    Tan function:
    [  0.00000000e+00   5.77350269e-01   1.00000000e+00   1.73205081e+00          
       1.63312394e+16]
    Inverse of tan:
    [ 0.          0.52359878  0.78539816  1.04719755  1.57079633]
    In degrees:
    [  0.  30.  45.  60.  90.]
    
  • 舍入函数

    numpy.around()

    这是一个返回四舍五入到所需精度的值的函数。该函数采用以下参数。
    
    numpy.around(a,decimals)
    
    函数说明
    序号 参数及说明
    1
    a
    输入数据
    2
    decimals
    要四舍五入的小数位数。默认为 0。如果为负数,则整数四舍五入到小数点左侧
    示例
    
    import numpy as np 
    a = np.array([1.0,5.55, 123, 0.567, 25.532]) 
    print 'Original array:' 
    print a 
    print '\n'  
    print 'After rounding:' 
    print np.around(a) 
    print np.around(a, decimals = 1) 
    print np.around(a, decimals = -1)
    
    它产生以下输出 -
    
    Original array:                                                               
    [   1.       5.55   123.       0.567   25.532] 
    After rounding:                                                               
    [   1.    6.   123.    1.   26. ]                                               
    [   1.    5.6  123.    0.6  25.5]                                          
    [   0.    10.  120.    0.   30. ]
    

    numpy.floor()

    该函数返回不大于输入参数的最大整数。floorscalar x是最大的integer i, i <= x. 请注意,在 Python 中,floor总是从 0 舍入。
    示例
    
    import numpy as np 
    a = np.array([-1.7, 1.5, -0.2, 0.6, 10]) 
    print 'The given array:' 
    print a 
    print '\n'  
    print 'The modified array:' 
    print np.floor(a)
    
    它产生以下输出 -
    
    The given array:                                                              
    [ -1.7   1.5  -0.2   0.6  10. ]
    The modified array:                                                           
    [ -2.   1.  -1.   0.  10.]
    

    numpy.ceil()

    ceil() 函数返回输入值的上限,即scalar x是最小的integer i, 这样i >= x.
    示例
    
    import numpy as np 
    a = np.array([-1.7, 1.5, -0.2, 0.6, 10]) 
    print 'The given array:' 
    print a 
    print '\n'  
    print 'The modified array:' 
    print np.ceil(a)
    
    它将产生以下输出 -
    
    The given array:                                                              
    [ -1.7   1.5  -0.2   0.6  10. ]
    The modified array:                                                           
    [ -1.   2.  -0.   1.  10.]