MATLAB如何使用intersect函数计算两个集合的交集

2020年12月21日00:21:19MATLAB如何使用intersect函数计算两个集合的交集已关闭评论

MATLAB如何使用intersect函数计算两个集合的交集

【语法说明】

Y=intersect(a,b):a、b必须为向量,函数找到向量a、b的公共部分,并以升序的形式返回。

[Y,ia,ib]=intersect(a,b):Y为向量a、b的公共元素,ia为公共元素在 a 中的位置索引,ib 为公共元素在 b 中的位置索引,即Y=a(ia),Y=b(ib)。

Y=intersect(A,B,‘rows’):A、B为相同列数的矩阵或长度相等的行向量,Y返回完全相等的行。

[Y,ia,ib]=intersect(a,b,‘rows’):Y为矩阵a、b的公共行,ia为公共行在 a 中的位置索引,ib 为公共行在 b 中的位置索引,即Y=a(ia,:),Y=b(ib,:)。

Y=intersect(ca,cb)或Y=intersect(ca,cb,‘rows’):a、b必须为字符串构成的细胞数组,Y返回细胞数组中相同的字符串,rows参数将被忽略,并给出警告信息。

【功能介绍】计算两个集合的交集,可以计算向量之间的公共元素,也可以计算矩阵的公共行、细胞数组的公共字符串。

【实例】找出矩阵 A、B 中相同的行,并给出这些行在 A中的位置。

>> A=[2 4 6;1 3 5;7 9 8]    % 矩阵A

A =

2 4 6

1 3 5

7 9 8

>> B=[1 2 3;4 5 6;7 9 8]    % 矩阵B

B =

1 2 3

4 5 6

7 9 8

>> [Y,ia, ~] = intersect(A,B,'rows') % 计算公共行及其位置

Y =

7 9 8

ia =

3

【实例讲解】矩阵A 和B 公共行为[7 9 8],位于矩阵A 中的第3行。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。