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,关注后即可获取最新文章推送

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

相关推荐
舰长1151 分钟前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器
小仙女的小稀罕36 分钟前
听不清重要会议录音急疯?这款常见AI工具听脑AI精准转译
开发语言·人工智能·python
mounter62539 分钟前
Linux 7.0 重磅更新:详解 nullfs 如何重塑根文件系统挂载与内核线程隔离
linux·运维·服务器·kernel
书到用时方恨少!42 分钟前
Python random 模块使用指南:从入门到精通
开发语言·python
第一程序员1 小时前
Python 4.0正式发布:新特性与学习建议
python·github
色空大师1 小时前
【网站搭建实操(一)环境部署】
java·linux·数据库·mysql·网站搭建
IAUTOMOBILE1 小时前
用Python批量处理Excel和CSV文件
jvm·数据库·python
威联通安全存储2 小时前
破除“重前端、轻底层”的数字幻象:如何夯实工业数据的物理底座
前端·python
Amour恋空2 小时前
Java多线程
java·开发语言·python
小陈工2 小时前
2026年3月28日技术资讯洞察:5G-A边缘计算落地、低延迟AI推理革命与工业智造新范式
开发语言·人工智能·后端·python·5g·安全·边缘计算