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,30,45,60,90])

In [3]: # 正弦值

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

In [5]: sin
Out[5]: array([0.        , 0.5       , 0.70710678, 0.8660254 , 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, 8.66025404e-01, 7.07106781e-01, 5.00000000e-01,
       6.12323400e-17])

In [14]: # 反余弦

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

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

In [17]: # 角度制单位

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

In [19]: # tan 函数

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

In [21]: tan
Out[21]:
array([0.00000000e+00, 5.77350269e-01, 1.00000000e+00, 1.73205081e+00,
       1.63312394e+16])

In [22]: # 反正切

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

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

In [25]: # 角度制单位

In [26]: np.degrees(inv)
Out[26]: array([ 0., 30., 45., 60., 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.   ,   5.55 , 123.   ,   0.567,  25.532])

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

In [5]: np.around(num, decimals=1)
Out[5]: array([  1. ,   5.6, 123. ,   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,  0.6,  10])

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

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

numpy.ceil() 函数

返回数字的上入整数

In [5]: np.ceil(num)
Out[5]: array([-1.,  2., -0.,  1., 10.])
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值