微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

NumPy 教程第 14 章:数学函数

NumPy 包含大量的各种数学运算的函数包括三角函数,算术运算的函数,复数处理函数

三角函数

NumPy 提供了标准的三角函数:sin()、cos()、tan()

In [1]: import numpy as np

In [2]: data = np.array([0,30,45,60,90])

In [3]: np.sin(data * np.pi / 180)
Out[3]: array([0.,0.5,0.70710678,0.8660254,1.        ])

In [4]: np.cos(data * np.pi / 180)
Out[4]:
array([1.00000000e+00,8.66025404e-01,7.07106781e-01,5.00000000e-01,6.12323400e-17])

In [5]: np.tan(data * np.pi / 180)
Out[5]:
array([0.00000000e+00,5.77350269e-01,1.00000000e+00,1.73205081e+00,1.63312394e+16])

arcsin,arccos,和 arctan 函数返回给定角度的 sin,cos 和 tan 的反三角函数

这些函数的结果可以通过 numpy.degrees() 函数将弧度转换为角度

In [1]: import numpy as np

In [2]: data = np.array([0,90])

In [3]: # 正弦值

In [4]: sin = np.sin(data * np.pi / 180)

In [5]: sin
Out[5]: array([0.,1.        ])

In [6]: # 计算角度的反正弦,返回值以弧度为单位

In [7]: inv = np.arcsin(sin)

In [8]: inv
Out[8]: array([0.,0.52359878,0.78539816,1.04719755,1.57079633])

In [9]: # 通过转化为角度制来检查结果

In [10]: np.degrees(inv)
Out[10]: array([ 0.,30.,45.,60.,90.])

In [11]: # arccos 和 arctan 函数行为类似

In [12]: cos = np.cos(data * np.pi / 180)

In [13]: cos
Out[13]:
array([1.00000000e+00,6.12323400e-17])

In [14]: # 反余弦

In [15]: inv = np.arccos(cos)

In [16]: inv
Out[16]: array([0.,1.57079633])

In [17]: # 角度制单位

In [18]: np.degrees(inv)
Out[18]: array([ 0.,90.])

In [19]: # tan 函数

In [20]: tan = np.tan(data * np.pi / 180)

In [21]: tan
Out[21]:
array([0.00000000e+00,1.63312394e+16])

In [22]: # 反正切

In [23]: inv = np.arctan(tan)

In [24]: inv
Out[24]: array([0.,1.57079633])

In [25]: # 角度制单位

In [26]: np.degrees(inv)
Out[26]: array([ 0.,90.])

舍入函数

numpy.around() 函数

返回指定数字的四舍五入值。

numpy.around(arr,decimals)

参数说明:

  • arr: 数组

  • decimals: 舍入的小数位数。 认值为0。 如果为负,整数将四舍五入到小数点左侧的位置

示例:

In [1]: import numpy as np

In [2]: num = np.array([1.0,5.55,123,0.567,25.532])

In [3]: num
Out[3]: array([  1.,123.,25.532])

In [4]: np.around(num)
Out[4]: array([  1.,6.,1.,26.])

In [5]: np.around(num,decimals=1)
Out[5]: array([  1.,5.6,0.6,25.5])

In [6]: np.around(num,decimals=-1)
Out[6]: array([  0.,10.,120.,0.,30.])

numpy.floor() 函数

返回数字的下舍整数

In [1]: import numpy as np

In [2]: num = np.array([-1.7,1.5,-0.2,10])

In [3]: num
Out[3]: array([-1.7,10. ])

In [4]: np.floor(num)
Out[4]: array([-2.,-1.,10.])

numpy.ceil() 函数

返回数字的上入整数

In [5]: np.ceil(num)
Out[5]: array([-1.,2.,-0.,10.])

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐