MATLAB知识点: intersect、union、setdiff和setxor函数 交集、并集、差集和对称差集

​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇------数学建模清风主讲》。​

MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili


节选自第3章 3.4.5 集合运算

intersect 、union 、setdiff 和setxor 函数

这四个函数分别用于计算两个数组之间的交集、并集、差集和对称差集,下面给出了这四个函数对应的维恩图(Venn diagram)。

因为这四个函数的用法类似,所以下面以intersect函数为例,我们介绍它的用法。

C = intersect(A,B)会返回数组A和B的共同数据,但是不包含重复项,返回的C默认会排序。我们还可以增加一个输入参数'stable',这样会按照在A中出现的顺序返回C中的值。

如果A和B的列数相同,那么我们可以加一个输入参数'rows',这时候intersect (A, B, 'rows')会将A和B的每一行视为一个整体,然后返回A和B共同的行。注意,MATLAB默认会对共同的行进行排序,排序规则如下:优先按照第一列元素升序排列,第一列元素相同时,会按第二列元素的升序排列,依此类推。当然,如果你希望按照与A中相同的顺序返回唯一值,则可以在输入的最后加一个参数'stable'。

另外,intersect函数可以有最多三个返回值,下面截图来自MATLAB官网:

通常情况下我们不会用到三个返回值,感兴趣的同学可以在MATLAB中进行测试。

剩余三个函数的用法我们举几个简单的例子,更多例子大家可以自己查看帮助文档学习。

相关推荐
冬奇Lab1 分钟前
【Kotlin系列09】委托机制与属性委托实战:组合优于继承的最佳实践
android·开发语言·kotlin
Vallelonga2 分钟前
浅谈 Rust bindgen 工具
开发语言·rust
ElfBoard3 分钟前
ElfBoard技术贴|如何在ELF-RK3506开发板上构建AI编程环境
c语言·开发语言·单片机·嵌入式硬件·智能路由器·ai编程·嵌入式开发
洲星河ZXH4 分钟前
Java,泛型
java·开发语言·windows
木木木一4 分钟前
Rust学习记录--C13 Part1 闭包和迭代器
开发语言·学习·rust
木木木一5 分钟前
Rust学习记录--C13 Part2 闭包和迭代器
开发语言·学习·rust
Wcy30765190665 分钟前
文件包含漏洞及PHP伪协议
开发语言·php
Deepoch5 分钟前
Deepoc数学大模型:通信行业智能化的算法引擎
人工智能·算法·数学建模·开发板·通信·具身模型·deepoc
CopyProfessor8 分钟前
Java Agent 入门项目模板(含代码 + 配置 + 说明)
java·开发语言
枫叶丹49 分钟前
【Qt开发】Qt系统(八)-> Qt UDP Socket
c语言·开发语言·c++·qt·udp