相交

两个阵列的交集

描述

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

  • 如果一个是表或时间表,然后相交返回的行集常见的两个表。对于时间表,相交需要排时间考虑进去,以确定平等和排序输出时间表C按行倍。

C=相交(A,BsetOrder回报C在一个特定的顺序。setOrder“排序”要么'稳定'

C=相交(A,B___, '行')C=相交(A,B, '行',___对待每一行一个并且每行作为单一实体,共同返回行至两一个,没有重复。您必须指定一个并可选择指定setOrder

“行”选项不支持单元阵列,除非其中的一金宝app个输入可以是一个分类阵列或日期时间阵列。

[CIAIB] =相交(___也返回索引向量IAIB使用任何以前的语法。

  • 通常,C = A(IA)C = B(IB)

  • 如果“行”选项指定,则C = A(IA,:)C = B(1B,:)

  • 如果一个是表或时间表,然后C = A(IA,:)C = B(1B,:)

[CIAIB] =相交(A,B,'遗产')[CIAIB] =相交(A,B, '行', '旧版')保留的行为相交从R2012b和以前的版本的功能。

'遗产'选项不支持分类阵列,阵列的日期时金宝app间,持续时间阵列,表格,或时间表。

例子

全部收缩

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

A = [7 1 7 7 4];B = [7 0 4 4 0];

找到共同的价值观念既一个

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

创建共同的行中的两个表。

A =表([1:5]”,分类({'一个';'B';'C';'d';'E'}),逻辑([0; 1; 0; 1; 0]))
A =5×3表VAR1 VAR2 VAR3 ____ ____ _____ 1所述的假2 B真图3C假4 d真5] E假
B =表([1:2:10]”,分类({'一个';'C';'E';'G';'一世'}),逻辑(零(5,1)))
B =5×3表VAR1 VAR2 VAR3 ____ ____ _____ 1所述的假的3C假5] E假7个G假9 I假

找到行常见的两种一个

C =相交(A,B)
C =3×3表VAR1 VAR2 VAR3 ____ ____ _____ 1所述的假的3C假5] E假

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

A = [7 1 7 7 4];B = [7 0 4 4 0];

找到共同的价值观念既一个,以及所述索引向量IAIB,这样C = A(IA)C = B(IB)

[C,IA,IB] =相交(A,B)
C =1×24 7
IA =2×15 1
IB =2×13 1

创建一个表,一个,性别,年龄和身高为五人。

A =表(分类({'M';'M';'F';'M';'F'}),...[27; 52; 31; 46; 35],[74; 68; 64; 61; 64],...'VariableNames'{'性别''年龄''高度'},...'RowNames'{“泰德”“弗雷德”“贝蒂”“鲍勃”“朱迪”})
A =5×3表性别年龄身高______ ___ ______泰德男性27 74佛瑞德中号52 68贝蒂˚F31 64鲍勃中号46 61朱迪接口35 64

创建一个表,,在共同与行一个

B =表(分类({'F';'M';'F';'F'}),...[31; 47; 35; 23],[64; 68; 62; 58],...'VariableNames'{'性别''年龄''高度'},...'RowNames'{“梅格”“乔”“贝丝”“艾米”})
B =4×3表性别年龄身高______ ___ ______梅格˚F31 64乔中号47 68贝丝接口35 62艾米˚F23 58

找到行常见的两种一个,以及所述索引向量IAIB,这样C = A(IA,:)C = B(1B,:)

[C,IA,IB] =相交(A,B)
C =1×3表性别年龄身高______ ___ ______贝蒂˚F31 64
IA = 3
IB = 1

具有相同的价值观,但名称不同两排,被认为是相等的。因此,我们发现,贝蒂,A(3,:),梅格B(1,:)具有相同的性别,年龄和身高。

创建两个矩阵与普通行。

A = [2 2 2;0 0 1;1 2 3;1 1 1];B = [1 2 3;2 2 2;2 2 0];

找到行常见的两种一个以及所述索引向量IAIB,这样C = A(IA,:)C = B(1B,:)

[C,IA,IB] =相交(A,B,“行”
C =2×31 2 3 2 2 2
IA =2×13 1
IB =2×11 2

一个不需要有相同的行数,但它们必须具有相同的列数。

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

指定'稳定'如果你想在值C有顺序的相同一个

A = [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

创建一个包含两个向量为NaN

A = [5楠楠];B = [5楠楠];

找到共同的价值观念既一个

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

相交对待为NaN值不同。

创建字符向量的单元阵列,一个

A = {'狗''猫''鱼''马'};

创建字符向量的单元阵列,其中一些矢量的已尾部的空白。

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

查找特征向量常见的两种一个

[C,IA,IB] =相交(A,B)
C =1x2的细胞{ '猫'} { '马'}
IA =2×12 4
IB =2×12 4

相交治疗后在字符向量作为不同的字符的单元阵列的白色空间。

创建的列向量字符数组。

A = ['一个';'B';'C'],类(A)
A =3X1 char数组'A' 'B' 'C'
ANS = '字符'

创建含有数字类型的元素的2×3矩阵

B = [65 66 67 68 69 70],类(B)
B =2×365 66 67 68 69 70
ANS = '双'

找到共同的价值观念既一个

[C,IA,IB] =相交(A,B)
C =3X1 char数组'A' 'B' 'C'
IA =3×11 2 3
IB =3×11 3 5

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

类(C)
ANS = '字符'

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

A = ['狗';'猫';'狐狸';'猪']。类(A)
ANS = '字符'

创建包含不同长度的动物名称字符向量的单元阵列。

B = {'猫''狗''鱼''马'};类(B)
ANS = '细胞'

查找特征向量常见的两种一个

C =相交(A,B)
C =2×1单元{'猫狗'}

结果,C是字符向量的单元阵列。

类(C)
ANS = '细胞'

使用'遗产'标志保护的行为相交从R2012b并在代码中以前的版本。

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

A = [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

输入参数

全部收缩

输入阵列,指定为数字阵列,逻辑阵列,字符数组,字符串数组,分类阵列,阵列的日期时间,持续时间阵列,字符向量,表格,或时间表的单元阵列。如果您指定“行”选项,一个必须具有相同的列数。

一个必须符合下列情况除外同一类:

  • 合乎逻辑烧焦和所有的数字类可以用结合阵列。

  • 字符向量的单元阵列可与字符数组或字符串数​​组结合起来。

  • 分类阵列可以与字符数组,字符向量的单元阵列,或串阵列组合。

  • 日期时间的阵列可以与日期字符载体或单个日期字符向量的单元阵列相结合。

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

  • 如果一个都是有序分类阵列,它们必须具有相同的套类,包括它们的顺序。如果没有一个也不是序数,它们不必具有相同的套类,并使用类别名称进行比较。在这种情况下,类别C是的类别从排序工会一个

  • 如果一个是表或时间表,它们必须具有相同的变量名称(除顺序)。对于表,列名会被忽略,从而使具有相同的值,但不同的名称有两行,被认为是相等的。对于时间表,行时间考虑在内,从而使具有相同的值,但不同的时代有两行,是不相等。

  • 如果一个有日期时间排列,它们必须与他们是否指定时区相互一致。

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

  • 分类(要么调用sortRows为了“行”选项)

  • NE

对象类的方法必须是相互一致。这些对象包括从相同的根类派生异构阵列。例如,一个可以是手柄的阵列图形对象。

为了标志,指定为“排序”要么'稳定'中,指示值(或行)的顺序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

数据类型:烧焦|

输出参数

全部收缩

数据共同一个时,返回作为载体,基质或表。如果输入一个是表或时间表,然后在变量的顺序C相同的变量顺序一个

下面描述的形状C当输入是矢量或矩阵,并且当'遗产'未指定标志:

  • 如果“行”标志没有被指定,那么C是一个列向量,除非两个一个是行向量,这种情况下C是一个行向量。

  • 如果“行”标志被指定,则C是含有从共同的行的矩阵一个

类的输入一个确定类别的C

  • 如果类的一个是相同的,那么C是同一类。

  • 如果结合了烧焦或nondouble数字类, 然后C是相同的类作为nondouble输入。

  • 如果结合了合乎逻辑, 然后C

  • 如果合并特征向量与一个单元阵列烧焦, 然后C是字符向量的单元阵列。

  • 如果合并与字符向量一个绝对阵列,字符向量,或串的单元阵列,然后C是一个明确的阵列。

  • 如果合并日期时间阵列日期字符载体或单个日期字符向量,然后的单元阵列C是日期时间阵列。

  • 如果合并一个字符串数组与字符向量或特征向量的单元阵列,然后C是一个字符串数组。

索引一个,返回为列向量时'遗产'未指定标志。IA识别的值(或行)中一个这是共同的。如果有重复的值(或行)中一个, 然后IA包含索引的值(或行)的第一次出现。

索引,返回为列向量时'遗产'未指定标志。IB识别的值(或行)中这是共同的一个。如果有重复的值(或行)中, 然后IB包含索引的值(或行)的第一次出现。

提示

  • 为了找到关于该路口的变量表或时间表的一个子集,你也可以使用列下标。例如,你可以使用交叉(A(:,瓦尔),B(:,瓦尔)),其中瓦尔是一个正整数,正整数的一个载体,变量名,变量名的单元阵列,或逻辑载体。另外,您也可以使用VARTYPE创建一个下标是a选择的变量指定的类型。

扩展功能

R2006a前推出