NumPy 双曲函数与集合操作详解

NumPy 双曲函数

NumPy 提供了 sinh()cosh()tanh() 等 ufunc,它们接受弧度值并生成相应的双曲正弦、双曲余弦和双曲正切值。

示例:

python 复制代码
import numpy as np

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

print(x)

示例

找到数组 arr 中所有值的双曲余弦值:

python 复制代码
import numpy as np

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

x = np.cosh(arr)

print(x)

查找角度

从双曲正弦、双曲余弦、双曲正切值查找角度。例如,sinh、cosh 和 tanh 的反函数(arcsinh、arccosh、arctanh)。

NumPy 提供了 arcsinh()arccosh()arctanh() 等 ufunc,它们给出相应 sinh、cosh 和 tanh 值的弧度值。

示例

找到 1.0 的角度:

python 复制代码
import numpy as np

x = np.arcsinh(1.0)

print(x)

数组中每个值的角度

示例

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

python 复制代码
import numpy as np

arr = np.array([0.1, 0.2, 0.5])

x = np.arctanh(arr)

print(x)

NumPy 集合操作

什么是集合

在数学中,集合是一组唯一元素的集合。

集合用于频繁进行交集、并集和差集运算。

在 NumPy 中创建集合

我们可以使用 NumPy 的 unique() 方法从任何数组中找到唯一元素。例如,创建一个集合数组,但请记住,集合数组应该只是一维数组。

示例

将以下包含重复元素的数组转换为集合:

python 复制代码
import numpy as np

arr = np.array([1, 1, 1, 2, 3, 4, 5, 5, 6, 7])

x = np.unique(arr)

print(x)

查找并集

要找到两个数组的唯一值,请使用 union1d() 方法。

示例

找到以下两个集合数组的并集:

python 复制代码
import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])

newarr = np.union1d(arr1, arr2)

print(newarr)

查找交集

要找到仅在两个数组中都存在的值,请使用 intersect1d() 方法。

示例

找到以下两个集合数组的交集:

python 复制代码
import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])

newarr = np.intersect1d(arr1, arr2, assume_unique=True)

print(newarr)

注意: intersect1d() 方法接受一个可选参数 assume_unique,如果设置为 True,则可以加快计算速度。在处理集合时应始终将其设置为 True。

查找差集

要找到第一个集合中存在但第二个集合中不存在的值,请使用 setdiff1d() 方法。

示例

找到 set2 中不存在的 set1 的差集:

python 复制代码
import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setdiff1d(set1, set2, assume_unique=True)

print(newarr)

注意: setdiff1d() 方法接受一个可选参数 assume_unique,如果设置为 True,则可以加快计算速度。在处理集合时应始终将其设置为 True。

查找对称差

要找到两个集合中都不存在的值,请使用 setxor1d() 方法。

示例

找到 set1 和 set2 的对称差:

python 复制代码
import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setxor1d(set1, set2, assume_unique=True)

print(newarr)

注意: setxor1d() 方法接受一个可选参数 assume_unique,如果设置为 True,则可以加快计算速度。在处理集合时应始终将其设置为 True。

最后

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

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

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

相关推荐
合作小小程序员小小店24 分钟前
SDN安全开发环境中常见的框架,工具,第三方库,mininet常见指令介绍
python·安全·生成对抗网络·网络安全·网络攻击模型
后台开发者Ethan27 分钟前
Python需要了解的一些知识
开发语言·人工智能·python
小米里的大麦28 分钟前
022 基础 IO —— 文件
linux
Xの哲學32 分钟前
Perf使用详解
linux·网络·网络协议·算法·架构
门前灯32 分钟前
Linux系统之iprconfig 命令详解
linux·运维·服务器·iprconfig
北京_宏哥36 分钟前
Python零基础从入门到精通详细教程11 - python数据类型之数字(Number)-浮点型(float)详解
前端·python·面试
tb_first1 小时前
k8sday09
linux·云原生·容器·kubernetes
忧郁的橙子.1 小时前
三、k8s 1.29 之 安装2
linux·运维·服务器
盼小辉丶1 小时前
PyTorch生成式人工智能——使用MusicGen生成音乐
pytorch·python·深度学习·生成模型
huangyuchi.1 小时前
【Linux系统】动静态库的制作
linux·运维·服务器·动态库·静态库·库的简单制作