主要内容

相交

设置两个数组的交集

描述

例子

C=相交(A、B)返回数据常见一个B,没有重复。C在顺序。

  • 如果一个B表或时间表,那么相交返回的行集两个表。的航班时刻表,相交考虑了行乘以确定平等,和排序输出时间表C行乘以。

例子

C=相交(A、B,setOrder)返回C在一个特定的顺序。setOrder可以“排序”“稳定”

C=相交(A、B,___,'行')C=相交(A、B“行”,___)把每一行的一个每一行的B共同作为单一实体和返回的行一个B,没有重复。您必须指定一个B和选择可以指定setOrder

“行”选项不支持细胞阵列,除非其中一个金宝app输入分类数组或datetime数组。

例子

(C,ia,ib)=相交(___)也回报指数向量iaib使用任何以前的语法。

  • 一般来说,C = (ia)C = B (ib)

  • 如果“行”指定选项:C = (ia):C = B (ib)

  • 如果一个B表或时间表,那么:C = (ia):C = B (ib)

例子

(C,ia,ib)=相交(A、B“遗产”)(C,ia,ib)=相交(A、B、“行”、“遗产”)保护的行为相交函数从R2012b和之前版本。

“遗产”选项不支持分类数组,dateti金宝appme数组,数组,持续时间表格,或时间表。

例子

全部折叠

创建两个向量,有共同的价值观。

一个= [7 1 7 7 4];B = [7 0 4 4 0];

找到共同的价值观一个B

C =相交(A, B)
C =1×24个7

创建两个表行共同之处。

=表([1:5]”,直言({“一个”;“B”;“C”;' D ';“E”})、逻辑([0,1,0,1,0]))
一个=5×3表Var1 Var2 Var3 ___ _____ _____ 1假2 B对3 C错4 D真5 E假
B =表([1:2:10]”,直言({“一个”;“C”;“E”;‘G’;“我”})、逻辑(0 (5、1)))
B =5×3表Var1 Var2 Var3 ___ _____ _____ 1假3 C假5 E假7 G假我假

找到两行常见一个B

C =相交(A, B)
C =3×3表Var1 Var2 Var3 ___ _____ _____ 1假3 C假5 E假

创建两个向量与价值观的共同点。

一个= [7 1 7 7 4];B = [7 0 4 4 0];

找到共同的价值观一个B,以及索引向量iaib,这样C = (ia)C = B (ib)

[C ia ib] =相交(A, B)
C =1×24个7
ia =2×15个1
ib =2×13个1

创建一个表,一个、性别、年龄、和高度为5人。

一个=表(分类({“米”;“米”;“F”;“米”;“F”}),[27;52;31;46;35],[74;68;64;61;64),“VariableNames”,{“性别”“年龄”“高度”},“RowNames”,{“泰德”“弗雷德”“贝蒂”“鲍勃”“朱迪”})
一个=5×3表性别年龄身高______ ___ _____ Ted弗雷德27 74米52 68贝蒂F 31 64鲍勃46 61朱迪F 35 64

创建一个表,B共同点,行一个

B =表(分类({“F”;“米”;“F”;“F”}),[31;47;35;23],[64;68;62;58],“VariableNames”,{“性别”“年龄”“高度”},“RowNames”,{梅格的“乔”“贝丝”“艾米”})
B =4×3表性别年龄身高______ ___ _____梅格31 64乔米47 68贝丝F 35 62艾米F 23 58

找到两行常见一个B,以及索引向量iaib,这样:C = (ia):C = B (ib)

[C ia ib] =相交(A, B)
C =1×3表性别年龄身高______ ___ _____贝蒂F 31 64
ia = 3
ib = 1

两行有相同的值,但不同的名字,被认为是相等的。因此,我们发现贝蒂,(3:)梅格,:B (1)有相同的性别、年龄、和高度。

创建两个矩阵行共同之处。

一个= [2 2 2;0 0 1;1 2 3;1 1 1];B = [1 2 3;2 2 2;2 2 0];

找到两行常见一个B以及索引向量iaib,这样:C = (ia):C = B (ib)

[C ia ib] =相交(A, B,“行”)
C =2×31 2 3 2 2 2
ia =2×13个1
ib =2×11 2

一个B不需要有相同的行数,但他们必须有相同数量的列。

使用setOrder参数指定值的顺序C

指定“稳定”如果你想要的值C有相同的顺序一个

一个= [7 1 7 7 4];B = [7 0 4 4 0];[C ia ib] =相交(A, B,“稳定”)
C =1×27 4
ia =2×11 - 5
ib =2×11 3

此外,您可以指定“排序”秩序。

[C ia ib] =相交(A, B,“排序”)
C =1×24个7
ia =2×15个1
ib =2×13个1

创建两个向量包含

一个=[5南南);B =[5南南);

找到共同的价值观一个B

C =相交(A, B)
C = 5

相交对待价值观是截然不同的。

创建一个单元阵列的特征向量,一个

一个= {“狗”,“猫”,“鱼”,“马”};

创建一个单元阵列的特征向量,B,一些向量的尾随空格。

B = {“狗”,“猫”,“鱼”,“马”};

找到两个特征向量常见一个B

[C ia ib] =相交(A, B)
C =1 x2单元格{“猫”}{'马'}
ia =2×12 4
ib =2×12 4

相交对待尾随空格在细胞阵列特征向量的不同的字符。

创建一个列向量的字符数组。

= (“一个”;“B”;“C”),类(一)
一个=3 x1 char数组“A”“B”“C”
ans = '字符'

创建一个2×3矩阵包含数字的元素类型

B =(65 66 67; 68 69 70),类(B)
B =2×365 66 67 68 69 70
ans =“双”

找到共同的价值观一个B

[C ia ib] =相交(A, B)
C =3 x1 char数组“A”“B”“C”
ia =3×11 2 3
ib =3×11 3 5

相交解释B作为一个字符数组并返回一个字符数组,C

类(C)
ans = '字符'

创建一个特征向量包含动物三个字母的名称。

= (“狗”;“猫”;“狐狸”;“猪”];类(一)
ans = '字符'

创建一个单元阵列特征向量包含动物名称不同的长度。

B = {“猫”,“狗”,“鱼”,“马”};类(B)
ans =“细胞”

找到两个特征向量常见一个B

C =相交(A, B)
C =2 x1细胞{“猫”}{‘狗’}

结果,C是一个单元阵列的特征向量。

类(C)
ans =“细胞”

使用“遗产”标志保护的行为相交R2012b和之前版本的代码。

找到的交集一个B与当前的行为。

一个= [7 1 7 7 4];B = [7 0 4 4 0];[C1, ia1 ib1] =相交(A, B)
C1 =1×24个7
ia1 =2×15个1
ib1 =2×13个1

找到独特的元素一个和保护遗产的行为。

[C2, ia2 ib2] =相交(A, B,“遗产”)
C2 =1×24个7
ia2 =1×25个4
ib2 =1×24个1

输入参数

全部折叠

输入数组。如果你指定“行”选项,然后一个B必须有相同数量的列。

一个B同一个类的必须用以下例外:

  • 逻辑,字符,所有数字类可以结合数组。

  • 细胞阵列特征向量可以结合字符数组或字符串数组。

  • 细胞分类数组可以结合字符数组,数组的特征向量,或字符串数组。

  • Datetime阵列可以结合细胞阵列单日期或日期特征向量的特征向量。

有额外的要求一个B基于数据类型:

  • 如果一个B都是顺序分类数组,它们必须有相同的组分类,包括他们的订单。如果既不一个也不B顺序,他们不需要有相同的组分类,并使用类别名称执行比较。在这种情况下,类别的C由的类别一个其次是类别的B不是在一个。类别是在相同的顺序一个B秩序是用于排序和类别C

  • 如果一个B表或时间表,他们必须具有相同的变量名(订单除外)。为表、行名称被忽略,这两行具有相同的值,但不同的名字,被认为是相等的。的航班时刻表,行乘以考虑在内,这两行具有相同的值,但不同时期,不被认为是相等的。

  • 如果一个Bdatetime数组,它们必须相互一致是否指定一个时区。

一个B也可以用下面的类对象的方法:

  • 排序(或sortrows“行”选项)

类方法的对象必须是相互一致的。这些对象包括异构数组来自同一根类。例如,一个B可以处理图形对象数组。

顺序标志,指定为“排序”“稳定”显示值的顺序(或行)C

国旗 描述
“排序”

的值(或行)C在返回的顺序返回排序

例子

C =相交([7 0 1 5],[0 2 7 5],“排序”)
C = 0 5 7

“稳定”

的值(或行)C在相同的顺序出现在返回一个

例子

C =相交([7 0 1 5],[0 2 7 5],“稳定”)
C = 7 0 5

数据类型:字符|字符串

输出参数

全部折叠

公共数据一个B,返回为一个向量,矩阵,或表。如果输入一个B表或时间表,那么变量的顺序吗C变量的顺序是一样的吗一个

以下描述的形状C当输入向量或矩阵和当“遗产”国旗没有指定:

  • 如果“行”国旗没有指定C是一个列向量,除非两个一个B在这种情况下,行向量吗C是一个行向量。

  • 如果“行”国旗是指定的,那么C常见的矩阵包含了行吗一个B

输入的类一个B决定了的C:

  • 如果类的一个B是相同的吗C是同一个班。

  • 如果你把一个字符或nondouble数字类,然后C是同一类nondouble输入。

  • 如果你把一个逻辑,然后C

  • 如果你把一个单元阵列的特征向量字符,然后C是一个单元阵列的特征向量。

  • 如果你把一系列分类与特征向量,单元阵列的特征向量,或字符串C是一个绝对的数组。

  • 如果你把一个datetime阵列单元阵列单日期或日期特征向量的特征向量,然后C是一个datetime数组。

  • 如果你把一个字符串数组和一个特征向量数组或单元的特征向量,然后C是一个字符串数组。

索引一个,作为一个列向量时返回“遗产”国旗没有指定。ia标识的值(或行)一个这是很常见的B。如果有重复值(或行)一个,然后ia包含值的指数第一次出现(或行)。

索引B,作为一个列向量时返回“遗产”国旗没有指定。ib标识的值(或行)B这是很常见的一个。如果有重复值(或行)B,然后ib包含值的指数第一次出现(或行)。

提示

  • 找到交点对变量从一个表或时间表的一个子集,您可以使用列加下标。例如,您可以使用相交((:,var),B (:,var)),在那里var是一个正整数,一个向量的正整数,一个变量的名字,一个细胞数组的变量名,或一个逻辑向量。或者,您可以使用vartype创建一个下标,选择一个指定类型的变量。

扩展功能

版本历史

之前介绍过的R2006a