当前位置: 首页 > news >正文

每日学习python(十)

今天我们来学习有关于集合的一系列操作。

一、查找不同元素

关键函数:

numpy.setdiff1d(ar1, ar2, assume_unique=False)

参数:

参数

描述

ar1

数组/列表。作为被减数的集合。

ar2

数组/列表。作为减数的集合。

assume_unique

(布尔值,默认False)。如果设置为True,则函数会假定输入数组已经是唯一的,可以跳过内部的去重步骤,从而提高速度。

简单例子:

# -*- coding: utf-8 -*- import numpy as np #查找在A但不在B中的元素 A = np.array([10,20,30,40,50]) B = np.array([30,40,60,70]) different_elements = np.setdiff1d(A,B) print(f"在A但不在B中的元素:{different_elements}") different_elements_1 = np.setdiff1d(B,A) print(f"在B但是不在A中的元素:{different_elements_1}")

结果:

二、查找公共元素

关键函数:

numpy.intersect1d(ar1, ar2, assume_unique=False, return_indices=False)

参数:

参数

描述

ar1,ar2

数组/列表。要计算交集的两个输入集合。

assume_unique

(布尔值,默认False)。如果为True,则跳过去重以提高性能。

return_indices

(布尔值,默认False)。如果为True,还会返回三个额外的数组:交集元素在ar1中的索引、交集元素在ar2中的索引,以及交集结果数组。

简单例子:

x = np.array([1,2,3,4,5,1]) y = np.array([2,3,6,5,1]) commen_elements = np.intersect1d(x,y) print(f"x与y公共的元素是:{commen_elements}") inter, ar1_inds, ar2_inds = np.intersect1d(x, y, return_indices=True) print(f"交集元素: {inter}") print(f"在 x 中的原始索引: {ar1_inds}") print(f"在 y 中的原始索引: {ar2_inds}")

结果:

三、合并数组元素

关键函数:

numpy.union1d(ar1, ar2)

参数:

参数描述
ar1,ar2数组/列表。要计算并集的两个输入集合。

简单例子:

arr1 = np.array([10,20,30]) arr2 = np.array([20,30,40,60,80]) union_elements = np.union1d(arr1,arr2) print(f"arr1和arr2的并集:{union_elements}")

结果:

四、从两个数组中提取唯一元素

关键函数:

numpy.setxor1d(ar1, ar2, assume_unique=False)

参数:

参数描述
ar1,ar2数组/列表。要计算对称差集的两个输入集合。
assume_unique(布尔值,默认False)。如果为True,则跳过去重以提高性能。

简单例子:

a = np.array([10,20,30,40]) b = np.array([30,40,50,60]) xor_elements = np.setxor1d(a,b) print(f"a和b的差集:{xor_elements}")

结果:

总结代码:

# -*- coding: utf-8 -*- import numpy as np #查找在A但不在B中的元素 A = np.array([10,20,30,40,50]) B = np.array([30,40,60,70]) different_elements = np.setdiff1d(A,B) print(f"在A但不在B中的元素:{different_elements}") different_elements_1 = np.setdiff1d(B,A) print(f"在B但是不在A中的元素:{different_elements_1}") x = np.array([1,2,3,4,5,1]) y = np.array([2,3,6,5,1]) commen_elements = np.intersect1d(x,y) print(f"x与y公共的元素是:{commen_elements}") inter, ar1_inds, ar2_inds = np.intersect1d(x, y, return_indices=True) print(f"交集元素: {inter}") print(f"在 x 中的原始索引: {ar1_inds}") print(f"在 y 中的原始索引: {ar2_inds}") arr1 = np.array([10,20,30]) arr2 = np.array([20,30,40,60,80]) union_elements = np.union1d(arr1,arr2) print(f"arr1和arr2的并集:{union_elements}") a = np.array([10,20,30,40]) b = np.array([30,40,50,60]) xor_elements = np.setxor1d(a,b) print(f"a和b的差集:{xor_elements}")
http://www.cnnetsun.cn/news/10947.html

相关文章:

  • 硬件测试面试题 - 模拟面试|AI面试官
  • QCoreApplication::aboutToQuit 可以链接多个槽函数吗
  • VLAN实验
  • Wan2.2-T2V-A14B模型对不同肤色人种的表现公平性评估
  • CTF竞赛系统、知识竞赛系统、漏洞靶场练习系统
  • 云主机Agent权限失控?AZ-500安全专家教你3招紧急封堵
  • HBase vs. 传统数据库:大数据时代的存储革命
  • Flutter 从原理到实战:深入理解跨平台框架核心与高效开发实践
  • Wan2.2-T2V-A14B实现物理级动态模拟的三大核心技术
  • 再谈ST表
  • 2026年机器人感知与智能控制国际学术会议(RPIC 2026)
  • Wan2.2-T2V-A14B生成视频可用于YouTube盈利吗?合规性解读
  • 【Docker Scout AI漏洞扫描揭秘】:如何利用人工智能精准发现容器安全盲点
  • Spring Kafka 动态消费实现案例
  • Wan2.2-T2V-A14B模型推理性能调优实战技巧分享
  • GraniStudio零代码平台调试算子方式有多少种?分别都是如何调试?
  • 小米14C刷国际版步骤
  • 智谱开源天团登陆 AtomGit,4 大模型覆盖多模态全场景!
  • 开源视频生成技术再突破:Wan2.1-FLF2V-14B模型实现720P高清流畅过渡
  • 教学辅助微信小程序设计毕业设计(源码+lw+部署文档+讲解等)
  • 【AUTOSAR AP Core】AUTOSAR AP核心:Executor角色揭秘
  • Chrony时间同步服务:从底层原理到技术演进的全景解析
  • 线性回归与KNN算法的核心原理及实践应用
  • Windows右键菜单革命:从混乱到高效的终极解决方案
  • 入门友好的低代码平台推荐,其中一款完全免费又能私有化部署
  • 基于VUE的小剧场票务系统[VUE]-计算机毕业设计源码+LW文档
  • AI不再“失忆“!揭秘让大模型记住一切的神奇技术,代码详解+实战教程,小白也能变大神!
  • Wan2.2-T2V-A14B模型API接口设计与调用示例详解
  • 如何快速实现Unity游戏翻译:XUnity.AutoTranslator终极指南
  • 阿里Qwen3双模型震撼开源:嵌入式与重排序技术革新RAG应用生态