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

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

相关推荐
一颗松鼠3 分钟前
JavaScript 闭包是什么?简单到看完就理解!
开发语言·前端·javascript·ecmascript
有梦想的咸鱼_5 分钟前
go实现并发安全hashtable 拉链法
开发语言·golang·哈希算法
海阔天空_201310 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
天下皆白_唯我独黑17 分钟前
php 使用qrcode制作二维码图片
开发语言·php
夜雨翦春韭21 分钟前
Java中的动态代理
java·开发语言·aop·动态代理
小远yyds23 分钟前
前端Web用户 token 持久化
开发语言·前端·javascript·vue.js
何曾参静谧35 分钟前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
q567315231 小时前
在 Bash 中获取 Python 模块变量列
开发语言·python·bash
许野平1 小时前
Rust: 利用 chrono 库实现日期和字符串互相转换
开发语言·后端·rust·字符串·转换·日期·chrono
也无晴也无风雨2 小时前
在JS中, 0 == [0] 吗
开发语言·javascript