• MATLAB集合操作


    MATLAB中包含多样的函数集合运算,如集,交集和测试组成员等。

    下表显示了一些常用的设置操作:

    函数描述
    intersect(A,B)设置两个数组的交集;返回A和B所共有的值。返回的值按排序顺序排列。
    intersect(A,B,'rows')将A和B的每一行作为单个实体处理,并返回A和B的公共行。返回的矩阵的行按排序顺序排列。
    ismember(A,B)返回与A大小相同的数组,包含1(true),其中A的元素在其他地方的B中找到,它返回0(false)。
    ismember(A,B,'rows')将A和B的每一行作为单个实体处理,并返回一个包含1(true)的向量,其中矩阵A的行也是B的行;否则,它返回0(false)。
    issorted(A)如果A的元素按排序顺序返回逻辑1(true),否则返回逻辑0(false)。输入A可以是向量,也可以是N-by-1或1-by-N的字符串数组。如果A和sort(A)的输出相等,则A被认为是排序的。
    issorted(A, 'rows')如果二维矩阵A的行按排序顺序返回逻辑1(真),否则返回逻辑0(假)。 如果A和排序(A)的输出相等,则认为矩阵A被排序。
    setdiff(A,B)设置两个数组的差值;返回不在B中的值。返回数组中的值按排序顺序排列。
    setdiff(A,B,'rows')

    将每一行A和B行作为单个实体处理,并返回一个不在B中的行。返回的矩阵的行按排序顺序排列。

    “行”选项不支持单元格数组。

    setxor设置两个数组的异或
    union设置两个数组的并集
    unique数组中唯一的值

    详细例子

    MATLAB中建立一个脚本文件,并键入下面的代码:

    a = [7 23 14 15 9 12 8 24 35]
    b = [ 2 5 7 8 14 16 25 35 27]
    u = union(a, b)
    i = intersect(a, b)
    s = setdiff(a, b)

    运行该文件,产生以下结果:

    a =
         7    23    14    15     9    12     8    24    35
    b =
         2     5     7     8    14    16    25    35    27
    u =
      Columns 1 through 11
         2     5     7     8     9    12    14    15    16    23    24
      Columns 12 through 14
        25    27    35
    i =
         7     8    14    35
    s =
         9    12    15    23    24

  • 相关阅读:
    HTML interview questions
    26栈和队列-简单实践
    关于js的类型转换(强制类型和隐式类型)
    RHCE---时间服务器
    Java面试题以及答案--Web部分
    硬核!最全Java面试宝典+Java核心知识集一箭双雕杠秋招
    C++第一篇--关键字以及命名空间
    解决Windows 10 家庭中文版没有组策略编辑器的问题
    【eBPF-01】初见:基于 BCC 框架的第一个 eBPF 程序
    如何应对网络攻击?
  • 原文地址:https://blog.csdn.net/std86021/article/details/127840635