NumPy 差分、最小公倍数、最大公约数、三角函数详解
NumPy 差分
离散差分意味着相邻元素之间的减法。
例如,对于 [1, 2, 3, 4],离散差分将是 [2-1, 3-2, 4-3] = [1, 1, 1]
要找到离散差分,使用 diff() 函数。
示例:
import numpy as np
arr = np.array([10, 15, 25, 5])
newarr = np.diff(arr)
print(newarr)
返回:[5 10 -20],因为 15-10=5,25-15=10,5-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]
示例
对以下数组进行两次离散差分:
import numpy as np
arr = np.array([10, 15, 25, 5])
newarr = np.diff(arr, n=2)
print(newarr)
返回:[5 -30],因为:15-10=5,25-15=10,5-25=-20,而 10-5=5 和 -20-10=-30
NumPy 最小公倍数(LCM)
最小公倍数是两个数的最小公倍数。
示例:
import numpy as np
num1 = 4
num2 = 6
x = np.lcm(num1, num2)
print(x)
返回:12,因为这是这两个数的最小公倍数(4*3=12 和 6*2=12)。
在数组中找到最小公倍数
要找到数组中所有值的最小公倍数,可以使用 reduce() 方法。
reduce() 方法将对每个元素使用 ufunc,在本例中是 lcm() 函数,并将数组减少一个维度。
示例
找到以下数组值的最小公倍数:
import numpy as np
arr = np.array([3, 6, 9])
x = np.lcm.reduce(arr)
print(x)
返回:18,因为这是所有三个数的最小公倍数(3*6=18,6*3=18 和 9*2=18)。
示例
找到包含从 1 到 10 的所有整数的数组中所有值的最小公倍数:
import numpy as np
arr = np.arange(1, 11)
x = np.lcm.reduce(arr)
print(x)
NumPy 最大公约数(GCD)
最大公约数(GCD,也称为 HCF,即最高公因数)是两个数的最大公共因数。
示例:
import numpy as np
num1 = 6
num2 = 9
x = np.gcd(num1, num2)
print(x)
返回:3,因为这是两个数都可以被整除的最大数(6/3=2 和 9/3=3)。
在数组中找到最大公约数
要找到数组中所有值的最大公约数,可以使用 reduce() 方法。
reduce() 方法将对每个元素使用 ufunc,在本例中是 gcd() 函数,并将数组减少一个维度。
示例
找到以下数组中所有数字的最大公约数:
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,它们接受弧度值并生成相应的正弦、余弦和正切值。
示例:
import numpy as np
x = np.sin(np.pi/2)
print(x)
示例
找到数组 arr 中所有值的正弦值:
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 中的所有值转换为弧度:
import numpy as np
arr = np.array([90, 180, 270, 360])
x = np.deg2rad(arr)
print(x)
将弧度转换为角度
示例
将以下数组 arr 中的所有值转换为角度:
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 的角度:
import numpy as np
x = np.arcsin(1.0)
print(x)
数组中每个值的角度
示例
找到数组中所有正弦值的角度:
import numpy as np
arr = np.array([1, -1, 0.1])
x = np.arcsin(arr)
print(x)
斜边
在 NumPy 中使用勾股定理找到斜边。
NumPy 提供了 hypot() 函数,它接受底边和垂直边的值,并根据勾股定理生成斜边。
示例
找到底边为 4,垂直边为 3 的斜边:
import numpy as np
base = 3
perp = 4
x = np.hypot(base, perp)
print(x)
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎点赞、收藏、关注
NumPy 差分、最小公倍数、最大公约数、三角函数详解的更多相关文章
- Numpy数组的组合与分割详解
在介绍数组的组合和分割前,我们需要先了解数组的维(ndim)和轴(axis)概念. 如果数组的元素是数组,即数组嵌套数组,我们就称其为多维数组.几层嵌套就称几维.比如形状为(a,b)的二维数组就可以看 ...
- 【python】详解numpy库与pandas库axis=0,axis= 1轴的用法
对数据进行操作时,经常需要在横轴方向或者数轴方向对数据进行操作,这时需要设定参数axis的值: axis = 0 代表对横轴操作,也就是第0轴: axis = 1 代表对纵轴操作,也就是第1轴: nu ...
- numpy的文件存储.npy .npz 文件详解
Numpy能够读写磁盘上的文本数据或二进制数据. 将数组以二进制格式保存到磁盘 np.load和np.save是读写磁盘数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 ...
- [poj 3159]Candies[差分约束详解][朴素的考虑法]
题意 编号为 1..N 的人, 每人有一个数; 需要满足 dj - di <= c 求1号的数与N号的数的最大差值.(略坑: 1 一定要比 N 大的...difference...不是" ...
- numpy模块(详解)
重点 索引和切片 级联 聚合操作 统计操作 矩阵 什么是数据分析 是把隐藏在一些看似杂乱无章的数据背后的信息提炼出来,总结出所研究对象的内在规律 数据分析是用适当的方法对收集来的大量数据进行分析,帮助 ...
- 扩展欧几里得(exgcd)与同余详解
exgcd入门以及同余基础 gcd,欧几里得的智慧结晶,信息竞赛的重要算法,数论的...(编不下去了 讲exgcd之前,我们先普及一下同余的性质: 若,那么 若,,且p1,p2互质, 有了这三个式子, ...
- SILC超像素分割算法详解(附Python代码)
SILC算法详解 一.原理介绍 SLIC算法是simple linear iterative cluster的简称,该算法用来生成超像素(superpixel) 算法步骤: 已知一副图像大小M*N,可 ...
- 人脸验证算法Joint Bayesian详解及实现(Python版)
人脸验证算法Joint Bayesian详解及实现(Python版) Tags: JointBayesian DeepLearning Python 本博客仅为作者记录笔记之用,不免有很多细节不对之处 ...
- Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt
PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 ...
- SIFT算法详解(转)
http://blog.csdn.net/zddblog/article/details/7521424 目录(?)[-] 尺度不变特征变换匹配算法详解 Scale Invariant Feature ...
随机推荐
- Quick BI产品核心功能大图(四):Quick引擎加速--十亿数据亚秒级分析
简介: 随着数字化进程的深入,数据应用的价值被越来越多的企业所重视.基于数据进行决策分析是应用价值体现的重要场景,不同行业和体量的公司广泛依赖BI产品制作报表.仪表板和数据门户,以此进行决策分析. ...
- dotnet 7 WPF 破坏性改动 按下 F3 让 DataGrid 自动排序
本文记录在 dotnet 7 下的 WPF 的一个破坏性改动.在 dotnet 7 下的 WPF 支持 DataGrid 在按下 F3 键的时候,自动按照当前所选列进行列自动排序.这将会让原本采用 F ...
- 提示工程(Prompt Engineering)将ChatGPT调教为傲娇猫娘~喵
Prompt Engineering(提示工程)是指通过设计精心构造的提示(prompt)或者输入,来引导大型语言模型生成特定类型的输出.这个技术背后的原理是利用模型对输入的敏感性,通过提供特定格式或 ...
- C++ 多级继承与多重继承:代码组织与灵活性的平衡
C++ 多级继承 多级继承是一种面向对象编程(OOP)特性,允许一个类从多个基类继承属性和方法.它使代码更易于组织和维护,并促进代码重用. 多级继承的语法 在 C++ 中,使用 : 符号来指定继承关系 ...
- python 操作 xlsx
目录 读取/写入:openpyxl demo1 读取/写入:openpyxl demo1 import openpyxl import os # 创建excel def write_excel_xls ...
- 05 elasticsearch学习笔记-基本CRUD
目录 视频教程 4.1 基本CRUD 4.2 URI查询 按时间段查 视频教程 Elasticsearch(7.8.1)沥血之作(包含仿百度搜索案例) https://www.bilibili.com ...
- Deepin安装Python3
https://www.jianshu.com/p/0c61bdfb9589 也可以看这篇,本文是这篇的简捷版,均原创 首先,把系统更到最新,并复制下面的代码 sudo apt update 更新软件 ...
- ansible(3)--ansible的相关命令行工具
目录 1 ansible命令详解 2 ansible-doc显示模块帮助信息 3 ansible-playbook 4 ansible-galaxy 5 ansible-console 1 ansib ...
- 🔥🔥v1.9.2-httpsok快速申请免费谷歌SSL证书
v1.9.2-httpsok快速申请免费谷歌SSL证书 介绍 httpsok 是一个便捷的 HTTPS 证书自动续签工具,专为 Nginx .OpenResty 服务器设计.已服务众多中小企业,稳定. ...
- Pandas学习之路【1】
安装pandas: pip install pandas pandas读取数据: 数据类型 读取方式 csv, tsv, txt pd.read_csv Excel pd.read_excel mys ...