文档

innerjoin

两个表或时间表之间的内部连接

语法

C = innerjoin(A,B)
C = innerjoin(A,B,名称,值)
[C,ia,ib] = innerjoin(___

描述

例子

C= innerjoin (A、B创建表格或时间表,C,作为内部连接之间一个而且B通过使用名称相同的所有变量来匹配行关键变量.只能对表和时间表的某些组合执行内部连接。

  • 如果一个那么,是桌子吗B一定是一张桌子。innerjoin返回C作为一个表。

  • 如果一个那是时刻表吗B可以是一张表格,也可以是一张时间表。innerjoin返回C作为两种投入组合的时间表。

内部连接只保留与之匹配的行一个而且B关于关键变量。C的所有非键变量一个而且B

的行标签一个而且B可以是关键变量。行标签是表的行名,或者时间表的行时间。

C= innerjoin (A、B名称,值使用一个或多个指定的附加选项执行内部连接操作名称,值对参数。

例如,您可以指定要用作关键变量的变量。

例子

Ciaib= innerjoin(___也返回索引向量,ia而且ib中行之间的对应关系C那些在一个而且B分别。您可以将此语法与前面语法中的任何输入参数一起使用。

例子

全部折叠

创建一个表格,一个

表([5;12;23;2;6],...“麦片”“披萨”“鲑鱼”“饼干”“披萨”},...“VariableNames”, {“年龄”“FavoriteFood”})
一个=5×2表年龄最喜欢的食物___ ____________ 5 '麦片' 12 '披萨' 23 '三文鱼' 2 '饼干' 6 '披萨'

创建一个表格,B,有一个共同的变量一个

B = table({“麦片”“饼干”“披萨”“鲑鱼”“蛋糕”},...(110; 160; 140; 367; 243),...“- - -”' D '“B”“B”“C -”},...“VariableNames”, {“FavoriteFood”“卡路里”“NutritionGrade”})
B =5×3表FavoriteFood卡路里NutritionGrade  ____________ ________ ______________ ' 谷物‘110’——‘饼干’160’D '披萨' 140 ' B '鲑鱼的367 B“蛋糕”243 C -”

使用innerjoin函数来创建一个新表,C,数据来自表格一个而且B

C = innerjoin(A,B)
C =5×4表年龄FavoriteFood卡路里NutritionGrade  ___ ____________ ________ ______________ 5“麦片”110“-”2“饼干”160 ' D ' 12 '披萨' 140 ' B ' 6 '披萨' 140 ' B ' 23“鲑鱼”367“B”

表格C按键变量排序,FavoriteFood

创建一个表格,一个

表({)“一个”“b”“c”“e”“h”}',[1 2 3 11 17]',...“VariableNames”, {“Key1”“Var1”})
一个=5×2表Key1 Var1  ____ ____ ' ' 1 ' b ' 2 ' c ' 3 ' e ' 11 ' h ' 17

创建一个表格,B,在变量中使用公共值Key1表之间的一个而且B,但也包含值为的行Key1不存在于一个

B = table({“一个”“b”' d '“e”}',[4 5 6 7]',...“VariableNames”, {“Key1”“Var2”})
B =4×2表Key1 Var2 ____ ____ 'a' 4 'b' 5 'd' 6 'e' 7

使用innerjoin函数来创建一个新表,C,数据来自表格一个而且B.只保留变量中值的行Key1匹配。

同样,返回索引向量,ia而且ib中行之间的对应关系C排在一个而且B分别。

[C,ia,ib] = innerjoin(A,B)
C =3×3表Key1 Var1 Var2  ____ ____ ____ ' ' 1 4 b 2 5 ' e ' 11 7
ia =3×11 2 4
ib =3×11 2 4

表格C按键变量中的值排序,Key1的水平串接:一个(ia)而且“Var2”B (ib)

创建一个表格,一个

A =表[10;4;2;3;7],[5;4;9;6;1],[10;3;8;8;4])
一个=5×3表Var1 Var2 Var3 ____ ____ ____ 10 5 10 4 4 3 2 9 8 3 6 8 7 1 4

创建一个表格,B,第二个变量中的公共值作为表的第一个变量一个

B = table([6;1; 6;8],[2;3;4;5;6])
B =5×2表Var1 Var2 ____ ____ 6 2 1 3 1 4 6 5 8 6

使用innerjoin函数来创建一个新表,C,数据来自表格一个而且B.使用的第一个变量一个第二个变量B作为关键变量。

[C,ia,ib] = innerjoin(A,B, A,B, B)“LeftKeys”,1,“RightKeys”, 2)
C =3×4表Var1_A Var2 Var3 Var1_B  ______ ____ ____ ______ 2 9 8 6 3 6 8 1 4 4 3 1
ia =3×13 4 2
ib =3×11 2 3

表格C只保留与之匹配的行一个而且B关于关键变量。

表格C的水平拼接:一个(ia)而且“Var1”B (ib)

制定两个时间表,一个而且B.它们有一些相同的行时间,但每一个都包含另一个时间表中没有的行时间。

A =时间表(seconds([1;2;4;6]),[1 2 3 11]')
一个=4×1的时间表时间Var1 _____ ____ 1秒1 2秒2 4秒3 6秒11
B =时间表(seconds([2;4;6;7]),[4 5 6 7]')
B =4×1的时间表时间Var1 _____ ____ 2秒4 4秒5 6秒6 7秒7

结合一个而且B通过内部连接。C将行与公共行时间匹配。C不包含来自两个时间表的任何其他行。

C = innerjoin(A,B)
C =3×2时间表时间Var1_A Var1_B _____ ______ ______ 2秒2 4 4秒3 5 6秒11 6

输入参数

全部折叠

输入表格,指定为表格或时间表。

名称-值对实参

指定逗号分隔的可选对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在单引号内(' ').可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“钥匙”,2中使用第二个变量一个第二个变量B作为关键变量。

全部折叠

要用作键的变量,指定为逗号分隔的一对,由“钥匙”和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。

您不能使用“钥匙”参数的名称-值对参数“LeftKeys”而且“RightKeys”名称-值对参数。

行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。

例子:“钥匙”,[1 3]中使用第一个和第三个变量一个而且B作为一个关键变量。

用作键的变量一个,指定为逗号分隔的对,由“LeftKeys”和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。

你必须使用“LeftKeys”参数的名称-值对参数“RightKeys”名称-值对参数。“LeftKeys”而且“RightKeys”两者必须指定相同数量的关键变量。innerjoin根据键值的顺序对键值。

行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。

例子:“LeftKeys”,1中只使用第一个变量一个作为一个关键变量。

用作键的变量B,指定为逗号分隔的对,由“RightKeys”和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。

你必须使用“RightKeys”参数的名称-值对参数“LeftKeys”名称-值对参数。“LeftKeys”而且“RightKeys”两者必须指定相同数量的关键变量。innerjoin根据键值的顺序对键值。

行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。

例子:“RightKeys”,3中只使用第三个变量B作为一个关键变量。

变量一个包括在C,指定为逗号分隔的对,由“LeftVariables”和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。

你可以用“LeftVariables”要在输出中包含或排除关键变量以及非关键变量,C

默认情况下,innerjoin包括来自的所有变量一个

变量B包括在C,指定为逗号分隔的对,由“RightVariables”和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。

你可以用“RightVariables”要在输出中包含或排除关键变量以及非关键变量,C

默认情况下,innerjoin包括来自的所有变量B除了关键变量。

输出参数

全部折叠

的内连接一个而且B,作为表格或时间表返回。输出表或时间表,C中的每对行包含一行一个而且B它们在关键变量中共享相同的值组合。如果一个而且B包含同名的变量,innerjoin中对应的变量名添加唯一后缀C

一般来说,如果有的话一个而且nB在关键变量中都包含相同的值组合C包含m * n这个组合的行数。

C按关键变量中的值排序,并包含LeftVars (ia)而且RightVars B (ib).默认情况下,LeftVars由的所有变量组成一个,RightVars的所有非关键变量组成B.否则,LefttVars控件指定的变量组成“LeftVariables”名称-值对参数,和RightVars变量是否由“RightVariables”名称-值对参数。

可以在中存储其他元数据,如描述、变量单元、变量名和行名C.有关更多信息,请参见的“属性”部分表格时间表

索引一个,作为列向量返回。的每个元素ia中的行标识一个对应于输出表或时间表中的那一行,C

索引B,作为列向量返回。的每个元素ib中的行标识B对应于输出表或时间表中的那一行,C

更多关于

全部折叠

关键变量

变量,用于匹配和组合输入表之间的数据,一个而且B

提示

输入表中的行标签一个而且B可以是键,单独或与其他键变量组合。行标签是表的行名或时间表的行时间。一般来说,innerjoin从输入表复制行标签一个到输出表C

  • 如果一个那么,是否没有行标签C没有行标签。

  • 如果一个那么是否有行标签innerjoin一个中创建行标签C

    • 然而,如果两者都是一个而且B是表,但没有指定任何输入表的行名作为键,那么innerjoin中未创建行名C

的行标签不能执行内部连接一个作为左键和变量B作为右键。的行标签要执行内部连接,请转换一个,并使用新表变量作为键。

扩展功能

另请参阅

|

在R2013b中介绍

这个话题有帮助吗?