主要内容

联盟

设置两个数组的并集

描述

例子

C=联盟(A、B中的合并数据一个B没有重复。C是有序的。

  • 如果一个B那么是表格还是时间表呢联盟返回两个表中合并的行集。的航班时刻表,联盟考虑行时间以确定相等性,并对输出时间表进行排序C按行乘以。

例子

C=联盟(A、BsetOrder返回C按照特定的顺序。setOrder可以“排序”“稳定”

C=联盟(A、B___, '行')C=联盟(A、B“行”,___处理每一行一个每一行B作为单个实体,并返回来自的组合行一个B,不要重复。你必须说明一个B还可以指定setOrder

“行”Option不支持单元格数组,除金宝app非其中一个输入是分类数组或日期时间数组。

例子

Ciaib= union()___也返回索引向量iaib使用任何前面的语法。

  • 中的值通常是C元素的排序组合是(ia)B (ib)

  • 如果“行”选项,则C的行是排序的组合吗:一个(ia): B (ib)

  • 如果一个B那么是表格还是时间表呢C是行的排序组合吗:一个(ia): B (ib)

例子

Ciaib= union()A、B“遗产”)Ciaib= union()A、B、“行”、“遗产”)保持的行为联盟功能从R2012b和以前的版本。

“遗产”选项不支持分类数组、日期时间数组金宝app、持续时间数组、表或时间表。

例子

全部折叠

定义两个具有相同值的向量。

A = [5 7 1];B = [3 1 1];

求向量的并集一个B

C = union(A,B)
C =1×41 3 5 7

定义两个行相同的表。

A = table([1:5]',[“一个”;“B”;“C”;' D ';“E”),逻辑([0,1,0,1,0]))
一个=5×3表Var1 Var2 Var3 ____ ____ _____ 1 A假2 B真3 C假4 D真5 E假
B = table [1:2:10]',[“一个”;“C”;“E”;‘G’;“我”),逻辑(0(5、1)))
B =5×3表Var1 Var2 Var3 ____ ____ _____ 1 A假3 C假5 E假7 G假9 I假

找出表的并集一个B

C = union(A,B)
C =7×3表Var1 Var2 Var3 ____ ____ _____ 1 A假2 B真3 C假4 D真5 E假7 G假9 I假

定义两个具有相同值的向量。

A = [5 7 1];B = [3 1 1];

求向量的并集一个B,以及索引向量,iaib

[C, A,B] = union(A,B)
C =1×41 3 5 7
ia =3×13 1 2
Ib = 1

中的值C的组合值是(ia)B (ib)

定义一个表,一个填写三个人的性别、年龄和身高。

A = table(表)“米”;“米”;“F”]、[27;52;31],(74;68;64),“VariableNames”, {“性别”“年龄”“高度”},“RowNames”, {“泰德”“弗雷德”“贝蒂”})
一个=3×3表性别年龄身高______ ___ ______泰德M 27 74弗雷德M 52 68贝蒂F 31 64

定义一个表,B用相同的变量一个

B = table[表]“F”;“米”]、[64;68],[31;47],“VariableNames”, {“性别”“高度”“年龄”},“RowNames”, {梅格的“乔”})
B =2×3表性别身高年龄______ ______ ___梅格F 64 31乔M 68 47

找出表的并集一个B,以及索引向量,iaib

[C, A,B] = union(A,B)
C =4×3表性别年龄身高______ ___ ______贝蒂F 31 64泰德M 27 74乔M 47 68弗雷德M 52 68
ia =3×13 1 2
Ib = 2

的数据梅格贝蒂都是一样的。联盟只返回来自的索引一个,对应于贝蒂

定义两个行相同的矩阵。

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

求的合并行一个B,没有重复,以及索引向量iaib

[C, A,B] = union(A,B, B)“行”
C =3×30 0 1 1 2 3 2 2 2 2
ia =2×12 1
Ib = 1

一排排的C合起来的行是:一个(ia): B (ib)

使用setOrder中值的顺序C

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

A = [5 7 1];B = [3 1 1];[C, A,B] = union(A,B, B)“稳定”
C =1×45 7 1 3
ia =3×11 2 3
Ib = 1

或者,您可以指定“排序”秩序。

A = [5 7 1];B = [3 1 1];[C, A,B] = union(A,B, B)“排序”
C =1×41 3 5 7
ia =3×13 1 2
Ib = 1

定义两个向量

A = [5 NaN 1];B = [4 NaN NaN];

求向量的并集一个B

C = union(A,B)
C =1×614、5、南、南、南

联盟对待不同的值。

创建字符向量的单元数组,一个

A = {“狗”“猫”“鱼”“马”};

创建字符向量的单元数组,B,其中一些向量有尾随的空白。

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

结合…的元素一个B

[C, A,B] = union(A,B)
C =1 x6单元格{“猫”}{‘狗’}{‘狗’}{‘鱼’}{‘鱼’}{'马'}
ia =4×12 1 3 4
ib =2×11 3

联盟将字符向量单元格数组中的尾随空格视为不同的字符。

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

A = [“一个”;“B”;“C”
一个=3x1字符数组' a ' ' b ' ' c '
类(一)
Ans = 'char'

创建包含数字类型元素的行向量

B = [68 69 70]
B =1×368 69 70
类(B)
Ans = 'double'

联盟一个B返回列向量字符数组。

C = union(A,B)
C =6x1字符数组" a " b " c " d " e " f "
类(C)
Ans = 'char'

创建一个包含字母的字符向量一个b,c

A = [“一个”;“b”;“c”];类(一)
Ans = 'char'

创建包含字母的字符向量单元数组cd,e

B = {“c”' d '“e”};类(B)
Ans = 'cell'

结合…的元素一个B

C = union(A,B)
C =5 x1细胞{“a”}{“b”}{“c”}{“d”}{“e”}

结果,C,是字符向量的单元数组。

类(C)
Ans = 'cell'

使用“遗产”标记来保留的行为联盟从R2012b和之前的版本在您的代码。

求的并集一个B使用当前行为。

A = [5 7 1];B = [3 1 1];[c, c, c] = union(A,B)
C1 =1×41 3 5 7
ia1 =3×13 1 2
Ib1 = 1

求的并集一个B,并保留遗留行为。

A = [5 7 1];B = [3 1 1];[c, c, c] = union(A,B, c)“遗产”
C2 =1×41 3 5 7
ia2 =1×21 2
ib2 =1×23 1

输入参数

全部折叠

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

一个B必须是同一类,但有以下例外:

  • 逻辑字符,所有数值类都可以与数组。

  • 字符向量的单元格数组可以与字符数组或字符串数组组合。

  • 分类数组可以与字符数组、字符向量的单元格数组或字符串数组组合使用。

  • 日期时间数组可以与日期字符向量或单个日期字符向量的单元格数组组合。

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

  • 如果一个B都是有序分类数组,它们必须具有相同的类别集,包括它们的顺序。如果既不一个也不B是有序的,它们不需要具有相同的类别集,并且使用类别名称执行比较。在本例中,的类别C来自的类别的排序并集是吗一个B

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

  • 如果一个B作为日期时间数组,它们在是否指定时区方面必须彼此一致。

一个B也可以是具有以下类方法的对象:

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

对象类的方法必须彼此一致。这些对象包括从同一根类派生的异构数组。例如,一个B可以是图形对象的句柄数组。

订单标志,指定为“排序”“稳定”中值(或行)的顺序C

国旗 描述
“排序”

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

例子

C = union([5 5 3],[1 2 5],“排序”
C = 1 2 3 5

“稳定”

中的值(或行)C按照它们出现的顺序返回一个,然后B

例子

C = union([5 5 3],[1 2 5],“稳定”
C = 5 3 1 2

数据类型:字符|字符串

输出参数

全部折叠

的综合数据一个B,以矢量、矩阵、表或时间表的形式返回。如果输入一个B是表格还是时间表,然后是变量的顺序C和变量的顺序一样吗一个

下面描述的形状C当输入是向量或矩阵时“遗产”未指定标志:

  • 如果“行”则未指定标志C是列向量,除非两者都是一个B是行向量,在哪种情况下C是一个行向量。例如,联盟([],[1 - 2])返回列向量。

  • 如果“行”则指定FlagC矩阵是否包含的组合行是一个B

输入的类一个B的类。C

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

  • 如果你把字符或非双精度数值类,然后C与非双输入相同的类。

  • 如果你把逻辑,然后C

  • 如果将字符向量的单元数组与字符,然后C是字符向量的单元数组。

  • 如果将分类数组与字符向量、字符向量的单元格数组或字符串组合,则C是一个分类数组。

  • 如果将日期时间数组与日期字符向量的单元格数组或单个日期字符向量组合,则C是一个日期时间数组。

  • 如果将字符串数组与字符向量或字符向量的单元数组组合,则C是一个字符串数组。

索引一个时,作为列向量返回“遗产”未指定标志。ia中的值(或行)一个对工会有贡献。中出现多次的值(或行)一个,然后ia包含值(或行)的第一个出现项的索引。如果一个值同时出现在一个B,然后ia中第一个出现项的索引一个

索引B时,作为列向量返回“遗产”未指定标志。ib中的值(或行)B对工会有贡献。中出现的重复值(或行)B,然后ib包含值第一次出现的索引。如果值(或行)同时出现在一个B,然后ib不包含值(或行)的索引。

提示

  • 若要查找表或时间表中变量子集的并集,可以使用列下标。例如,您可以使用联盟(一个(:,var), B (:,var)),在那里var是一个正整数、一个正整数的向量、一个变量名、一个变量名的单元格数组或一个逻辑向量。或者,您可以使用vartype创建选择指定类型变量的下标。

扩展功能

R2006a之前介绍