前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NumPy 差分、最小公倍数、最大公约数、三角函数详解

NumPy 差分、最小公倍数、最大公约数、三角函数详解

原创
作者头像
小万哥
发布2024-06-17 19:40:52
1390
发布2024-06-17 19:40:52
举报
文章被收录于专栏:程序人生丶

NumPy 差分

离散差分意味着相邻元素之间的减法。

例如,对于 [1, 2, 3, 4],离散差分将是 [2-1, 3-2, 4-3] = [1, 1, 1]

要找到离散差分,使用 diff() 函数。

示例:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([10, 15, 25, 5])

newarr = np.diff(arr)

print(newarr)

返回:[5 10 -20],因为 15-10=525-15=105-25=-20

我们可以通过给出参数 n 来重复执行此操作。

例如,对于 [1, 2, 3, 4]n = 2 时,离散差分将是 [2-1, 3-2, 4-3] = [1, 1, 1],然后,由于 n=2,我们将再次执行一次,得到新结果:[1-1, 1-1] = [0, 0]

示例

对以下数组进行两次离散差分:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([10, 15, 25, 5])

newarr = np.diff(arr, n=2)

print(newarr)

返回:[5 -30],因为:15-10=525-15=105-25=-20,而 10-5=5-20-10=-30

NumPy 最小公倍数(LCM)

最小公倍数是两个数的最小公倍数。

示例:

代码语言:python
代码运行次数:0
复制
import numpy as np

num1 = 4
num2 = 6

x = np.lcm(num1, num2)

print(x)

返回:12,因为这是这两个数的最小公倍数(4*3=126*2=12)。

在数组中找到最小公倍数

要找到数组中所有值的最小公倍数,可以使用 reduce() 方法。

reduce() 方法将对每个元素使用 ufunc,在本例中是 lcm() 函数,并将数组减少一个维度。

示例

找到以下数组值的最小公倍数:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([3, 6, 9])

x = np.lcm.reduce(arr)

print(x)

返回:18,因为这是所有三个数的最小公倍数(3*6=186*3=189*2=18)。

示例

找到包含从 110 的所有整数的数组中所有值的最小公倍数:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.arange(1, 11)

x = np.lcm.reduce(arr)

print(x)

NumPy 最大公约数(GCD)

最大公约数(GCD,也称为 HCF,即最高公因数)是两个数的最大公共因数。

示例:

代码语言:python
代码运行次数:0
复制
import numpy as np

num1 = 6
num2 = 9

x = np.gcd(num1, num2)

print(x)

返回:3,因为这是两个数都可以被整除的最大数(6/3=29/3=3)。

在数组中找到最大公约数

要找到数组中所有值的最大公约数,可以使用 reduce() 方法。

reduce() 方法将对每个元素使用 ufunc,在本例中是 gcd() 函数,并将数组减少一个维度。

示例

找到以下数组中所有数字的最大公约数:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([20, 8, 32, 36, 16])

x = np.gcd.reduce(arr)

print(x)

返回:4,因为这是所有值都可以被整除的最大数。

NumPy 三角函数

NumPy 提供了 sin()cos()tan() 等 ufunc,它们接受弧度值并生成相应的正弦、余弦和正切值。

示例:

代码语言:python
代码运行次数:0
复制
import numpy as np

x = np.sin(np.pi/2)

print(x)

示例

找到数组 arr 中所有值的正弦值:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([np.pi/2, np.pi/3, np.pi/4, np.pi/5])

x = np.sin(arr)

print(x)

将角度转换为弧度

默认情况下,所有的三角函数都接受弧度作为参数,但是在 NumPy 中我们也可以将弧度和角度相互转换。

注意:弧度值是 pi/180 乘以角度值。

示例

将以下数组 arr 中的所有值转换为弧度:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([90, 180, 270, 360])

x = np.deg2rad(arr)

print(x)

将弧度转换为角度

示例

将以下数组 arr 中的所有值转换为角度:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([np.pi/2, np.pi, 1.5*np.pi, 2*np.pi])

x = np.rad2deg(arr)

print(x)

查找角度

从正弦、余弦、正切值查找角度。例如,sin、cos 和 tan 的反函数(arcsin、arccos、arctan)。

NumPy 提供了 arcsin()arccos()arctan() 等 ufunc,它们给出相应 sin、cos 和 tan 值的弧度值。

示例

找到 1.0 的角度:

代码语言:python
代码运行次数:0
复制
import numpy as np

x = np.arcsin(1.0)

print(x)

数组中每个值的角度

示例

找到数组中所有正弦值的角度:

代码语言:python
代码运行次数:0
复制
import numpy as np

arr = np.array([1, -1, 0.1])

x = np.arcsin(arr)

print(x)

斜边

在 NumPy 中使用勾股定理找到斜边。

NumPy 提供了 hypot() 函数,它接受底边和垂直边的值,并根据勾股定理生成斜边。

示例

找到底边为 4,垂直边为 3 的斜边:

代码语言:python
代码运行次数:0
复制
import numpy as np

base = 3
perp = 4

x = np.hypot(base, perp)

print(x)

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • NumPy 差分
    • 示例:
      • 示例
      • NumPy 最小公倍数(LCM)
        • 示例:
          • 在数组中找到最小公倍数
            • 示例
              • 示例
              • NumPy 最大公约数(GCD)
                • 示例:
                  • 在数组中找到最大公约数
                    • 示例
                    • NumPy 三角函数
                      • 示例:
                        • 示例
                          • 将角度转换为弧度
                            • 示例
                              • 将弧度转换为角度
                                • 示例
                                  • 查找角度
                                    • 示例
                                      • 数组中每个值的角度
                                        • 示例
                                          • 斜边
                                            • 示例
                                            • 最后
                                            领券
                                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档