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中进行测试。

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

相关推荐
DLYSB_39 分钟前
API 网关流量洪峰与突发 CC 攻击:我用 Go 写了个“现场物理防御哨兵”,把故障响应压缩到秒级
开发语言·后端·golang·报警灯
雨田言炎2 小时前
四、关于Qt项目需要知道的
开发语言·笔记·qt
程序喵大人3 小时前
【C++进阶】STL算法与函数对象 - 02 sort为什么需要随机访问迭代器
开发语言·c++·算法
SomeB1oody3 小时前
【RustyML入门】2.6. 线性判别分析
开发语言·后端·机器学习·rust·教程
用户昵称1004 小时前
C/C++编程-工程实践-本地存储log的工程意义
c语言·开发语言
吹什么轩5 小时前
c++复习:map和set的使用
开发语言·c++
数模竞赛Paid answer5 小时前
2025年五一杯数学建模A题支路车流量推测问题求解全过程论文及程序
数学建模·数据分析·五一杯
必须得开心呀6 小时前
qt生成dump文件并定位异常
开发语言·qt
fpcc6 小时前
跟我学C++中级篇—内存流
开发语言·c++