innerjoin
两个表或时间表之间的内部连接
语法
C = innerjoin(A,B)
C = innerjoin(A,B,名称,值)
[C,ia,ib] = innerjoin(___)
描述
例子
具有一个共同变量的表的内连接操作
创建一个表格,一个
.
表([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
输入参数
A、B
- - - - - -输入表
表|时间表
输入表格,指定为表格或时间表。
名称-值对实参
指定逗号分隔的可选对名称,值
参数。的名字
参数名称和价值
对应的值。的名字
必须出现在单引号内(' '
).可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“钥匙”,2
中使用第二个变量一个
第二个变量B
作为关键变量。
“钥匙”
- - - - - -用作键的变量
正整数|正整数向量|特征向量|字符向量的单元格数组|逻辑向量
要用作键的变量,指定为逗号分隔的一对,由“钥匙”
和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。
您不能使用“钥匙”
参数的名称-值对参数“LeftKeys”
而且“RightKeys”
名称-值对参数。
行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。
例子:“钥匙”,[1 3]
中使用第一个和第三个变量一个
而且B
作为一个关键变量。
“LeftKeys”
- - - - - -用作键的变量一个
正整数|正整数向量|特征向量|字符向量的单元格数组|逻辑向量
用作键的变量一个
,指定为逗号分隔的对,由“LeftKeys”
和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。
你必须使用“LeftKeys”
参数的名称-值对参数“RightKeys”
名称-值对参数。“LeftKeys”
而且“RightKeys”
两者必须指定相同数量的关键变量。innerjoin
根据键值的顺序对键值。
行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。
例子:“LeftKeys”,1
中只使用第一个变量一个
作为一个关键变量。
“RightKeys”
- - - - - -用作键的变量B
正整数|正整数向量|特征向量|字符向量的单元格数组|逻辑向量
用作键的变量B
,指定为逗号分隔的对,由“RightKeys”
和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。
你必须使用“RightKeys”
参数的名称-值对参数“LeftKeys”
名称-值对参数。“LeftKeys”
而且“RightKeys”
两者必须指定相同数量的关键变量。innerjoin
根据键值的顺序对键值。
行标签可以是键,单独使用也可以与其他键变量组合使用。有关更多信息,请参见提示部分。
例子:“RightKeys”,3
中只使用第三个变量B
作为一个关键变量。
“LeftVariables”
- - - - - -变量一个
包括在C
正整数|正整数向量|特征向量|字符向量的单元格数组|逻辑向量
变量一个
包括在C
,指定为逗号分隔的对,由“LeftVariables”
和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。
你可以用“LeftVariables”
要在输出中包含或排除关键变量以及非关键变量,C
.
默认情况下,innerjoin
包括来自的所有变量一个
.
“RightVariables”
- - - - - -变量B
包括在C
正整数|正整数向量|特征向量|字符向量的单元格数组|逻辑向量
变量B
包括在C
,指定为逗号分隔的对,由“RightVariables”
和正整数,正整数的向量,字符向量,字符向量的单元格数组,或逻辑向量。
你可以用“RightVariables”
要在输出中包含或排除关键变量以及非关键变量,C
.
默认情况下,innerjoin
包括来自的所有变量B
除了关键变量。
输出参数
C
-内部连接一个
而且B
表|时间表
的内连接一个
而且B
,作为表格或时间表返回。输出表或时间表,C
中的每对行包含一行一个
而且B
它们在关键变量中共享相同的值组合。如果一个
而且B
包含同名的变量,innerjoin
中对应的变量名添加唯一后缀C
.
一般来说,如果有的话米
行一个
而且n
行B
在关键变量中都包含相同的值组合C
包含m * n
这个组合的行数。
C
按关键变量中的值排序,并包含LeftVars (ia)
而且RightVars B (ib)
.默认情况下,LeftVars
由的所有变量组成一个
,RightVars
的所有非关键变量组成B
.否则,LefttVars
控件指定的变量组成“LeftVariables”
名称-值对参数,和RightVars
变量是否由“RightVariables”
名称-值对参数。
ia
-索引至一个
列向量
索引一个
,作为列向量返回。的每个元素ia
中的行标识一个
对应于输出表或时间表中的那一行,C
.
ib
-索引至B
列向量
索引B
,作为列向量返回。的每个元素ib
中的行标识B
对应于输出表或时间表中的那一行,C
.
更多关于
关键变量
变量,用于匹配和组合输入表之间的数据,一个
而且B
.
提示
输入表中的行标签一个
而且B
可以是键,单独或与其他键变量组合。行标签是表的行名或时间表的行时间。一般来说,innerjoin
从输入表复制行标签一个
到输出表C
.
如果
一个
那么,是否没有行标签C
没有行标签。如果
一个
那么是否有行标签innerjoin
从一个
中创建行标签C
.然而,如果两者都是
一个
而且B
是表,但没有指定任何输入表的行名作为键,那么innerjoin
中未创建行名C
.
的行标签不能执行内部连接一个
作为左键和变量B
作为右键。的行标签要执行内部连接,请转换一个
,并使用新表变量作为键。
扩展功能
高大的数组
使用行数超过内存容量的数组进行计算。
此函数支持高数组,但有以下限万博1manbetx制:
不能连接两个高输入。
innerjoin
可以连接在一起:一张高桌子和一张普通桌子。
有固定桌子或时间表的高时间表。
必须指定一个输出参数。三输出语法
[C,ia,ib] = innerjoin(___)
不支持。万博1manbetx
有关更多信息,请参见高大的数组.
在R2013b中介绍
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。