主要内容

加入

结合两个表行或时间表使用关键变量

描述

例子

T=加入(Tleft,Tright)结合表或时间表TleftTright使用关键变量。所有变量在两个表相同的名称是关键变量。表加入附加行从右表的关键变量匹配值左表的关键变量。例如,如果Tleft有变量命名Key1Var1,Tright有变量Key1Var2,然后T =加入(Tleft Tright)使用Key1作为一个关键变量。

匹配的关键变量的值在左和右表中没有相同的顺序。同时,的关键变量Tright必须包含所有关键变量的值呢Tleft。每个值必须只发生一次的关键变量Tright多次,但可能发生的关键变量Tleft

输入表,时间表,或者每个之一。

  • 如果Tleft是一个表,然后呢加入返回T作为一个表。

  • 如果Tleft是一个时间表,然后呢加入返回T作为一个时间表。

行标签的向量TleftTright可关键变量。行标签是一个表的行名称,或行乘以一个时间表。

例子

T=加入(Tleft,Tright,名称,值)加入表或时间表由一个或多个指定附加选项名称,值对参数。

例如,您可以指定使用哪个变量作为关键变量。

例子

(T,iright)=加入(___)还返回一个索引向量iright这样的每个元素iright标识的行Tright对应于这一行T。您可以使用该语法与任何输入参数的前面的语法。

例子

全部折叠

创建一个表,Tleft

({Tleft =表贾尼斯的,“乔纳斯”,“哈维尔”,“杰瑞”,“朱莉”}”,[1,2;1;2;1],“VariableNames”,{“员工”“部门”})
Tleft =5×2表员工部门__________ __________{‘贾尼斯}1{“乔纳斯”}2{“哈维尔”}1{“杰瑞”}2{“朱莉”}1

创建一个表,Tright,常见的一个变量Tleft

Tright =表([1 - 2],{“玛丽”“蒙娜丽莎”}',“VariableNames”,{“部门”“经理”})
Tright =2×2表部门经理__________ ________ 1{“玛丽”}2{“蒙娜丽莎”}

创建一个新表,T从表,包含数据TleftTright。使用加入功能重复和追加经理数据表Tright的数据表Tleft基于关键变量,部门

T =加入(Tleft Tright)
T =5×3表员工部门经理__________ __________ ________{‘贾尼斯}1{“玛丽”}{“乔纳斯”}2{“蒙娜丽莎”}{“哈维尔”}1{“玛丽”}{“杰瑞”}2{“蒙娜丽莎”}{“朱莉”}1{“玛丽”}

创建一个表,Tleft

Tleft =表([5;12;23;2,6],{“麦片”;“披萨”;“鲑鱼”;“饼干”;“披萨”},“VariableNames”,{“年龄”,“FavoriteFood”},“RowNames”,{“艾米”,“鲍比”,“冬青”,“哈利”,“莎莉”})
Tleft =5×2表年龄FavoriteFood ___ _______艾米5{“麦片”}鲍比12{“披萨”}冬青23{“鲑鱼”}哈利2{‘饼干’}莎莉6{'披萨'}

创建一个表,Tright,有一个共同的变量Tleft

({Tright =表“麦片”;“饼干”;“披萨”;“鲑鱼”;“蛋糕”},(110;160;140;367;243),{“B”;' D ';“B -”;“一个”;“C -”},“VariableNames”,{“FavoriteFood”,“卡路里”,“NutritionGrade”})
Tright =5×3表FavoriteFood卡路里NutritionGrade{“麦片”}110 _______ ________ * * * {B}{‘饼干’}160 {' D '}{“披萨”}140{的B -}{“鲑鱼”}367 {A}{‘蛋糕’}243 {' C - '}

创建一个新表,T,数据表TleftTright。变量共同之处,FavoriteFood的,作为一个关键变量加入函数。

T =加入(Tleft Tright)
T =5×4表艾米时代FavoriteFood卡路里NutritionGrade ___ _______ ________ * * * 110{“麦片”}{B} 140年博比12日{“披萨”}{的B -}冬青23{“鲑鱼”}367 {A}哈利160{‘饼干’}{' D '}莎莉6{“披萨”}140 {' B - '}

T不包括信息从表的最后一行吗Tright关于“蛋糕”因为没有相应的条目在表Tleft

创建一个表,Tleft

Tleft =表([10;4;2;3;7]、[5;4、9、6;1],[10;3、8、8;4))
Tleft =5×3表Var1 Var2 Var3 ____上10 5 10 4 4 3 2 9 8 3 6 7 8 1 4

创建一个表,Tright,给Var2的表Tright相同的内容Var2从表Tleft

Tright =表([6;1;1、6、8],[5;4、9、6;1))
Tright =5×2表Var1 Var2 ____ ____ 6 5 1 4 1 9 6 6 8 1

创建一个新表,T从表,包含数据TleftTright。使用Var2在表中TleftTright作为关键变量加入函数。

T =加入(Tleft Tright,“钥匙”,“Var2”)
T =5×4表Var1_Tleft Var2 Var3 Var1_Tright __________ ____ ____ ___________ 10 5 6 4 4 3 2 1 9 8 1 3 6 8 6 7 1 4 8

加入增加了一个独特的后缀nonkey变量,Var1区分的数据表TleftTright

创建一个新表和数据表TleftTright。如果任何nonkey变量在两个表有相同的名字,只保留表的副本Tleft

创建一个表,Tleft

Tleft =表([10;4;2;3;7]、[5;4、9、6;1))
Tleft =5×2表Var1 Var2 ____ ____ 10 5 4 4 2 9 3 6 7 1

创建一个表,Tright,给Var2的表Tright相同的内容Var2从表Tleft

Tright =表([6;1;1、6、8],[5;4、9、6;1],[10;3、8、8;4))
Tright =5×3表Var1 Var2 Var3 ____上6 5 10 1 4 3 1 9 8 6 6 8 8 1 4

创建一个新表,T,数据表TleftTright。使用Var2作为一个关键变量加入功能,只保留副本Var1从表Tleft。输出表T不包含Var1数据表Tright

T =加入(Tleft Tright,“钥匙”,“Var2”,“KeepOneCopy”,“Var1”)
T =5×3表Var1 Var2 Var3 ____上10 5 10 4 4 3 2 9 8 3 6 7 8 1 4

创建一个表,Tleft

([Tleft =表“米”;“米”;“F”;“F”;“F”]、[38,43岁,38;40;49),“VariableNames”,{“性别”“年龄”},“RowNames”,{“史密斯”“约翰逊””威廉姆斯“琼斯”“棕色”})
Tleft =5×2表性别年龄______ ___史密斯威廉姆斯43 M约翰逊38 M F 38琼斯布朗40 F 49

创建一个表,Tright,这样的行Tleft的行Tright有一个一一对应。

Tright =表([64;69;67;71;64),(119;163;133;176;131),(122 80;109 77;117 75;124 93;125 83),“VariableNames”,{“高度”“重量”“血压”},“RowNames”,{“棕色”“约翰逊”“琼斯”“史密斯””威廉姆斯})
Tright =5×3表身高体重血压持续_________________布朗琼斯约翰逊64 119 122 80 69 163 109 77 67 133 117 75史密斯威廉姆斯71 176 124 93 64 131 125 83

创建一个新表,T,数据表TleftTright。使用行名称作为关键变量的向量。(这个名字行向量的表的名称“行”如图所示,Tleft.Properties.DimensionNames {1}。)

T =加入(Tleft Tright,“钥匙”,“行”)
T =5×5表性别年龄身高体重血压______ ___交_________________史密斯约翰逊38 71 176 124 93 69 43 163 109 77威廉姆斯F 38 64 131 125 83琼斯布朗40 67 133 117 75 F 49 64 119 122 80

的行T在相同的顺序吗Tleft

创建一个表,Tleft

Tleft =表([10;4;2;3;7]、[5;4、9、6;1],[10;3、8、8;4))
Tleft =5×3表Var1 Var2 Var3 ____上10 5 10 4 4 3 2 9 8 3 6 7 8 1 4

创建一个表,Tright,给Var2的表Tright相同的内容Var1从表Tleft,但以不同的顺序。

Tright =表([6;1;1、6、8],[2、3、4、7、10])
Tright =5×2表Var1 Var2 ____ ____ 6 2 1 3 4 6 7 8 10

创建一个新表,T从表,包含数据TleftTright。使用Var1从表TleftVar2从表Tright作为关键变量加入函数。

[T, iright] =加入(Tleft Tright,“LeftKeys”,1“RightKeys”,2)
T =5×4表Var1_Tleft Var2 Var3 Var1_Tright __________ ____ ____ ___________ 10 5 8 4 4 3 2 1 9 8 6 3 6 8 1 7 1 4 6
iright =5×15 3 1 2 4

T的水平连接吗TleftTright (iright, 1)

创建两个时间表,有相同的行乘以但不同的变量。

流量= (0.8 0.9 0.1 0.7 0.9)';噪音= [0 1 2.3 1.5 - 2]';Tleft =时间表(小时(1:5),交通、噪音)
Tleft =5×2时间表交通噪声__ _________ _____ 1小时0.8 0 2小时0.9 - 1 3人力资源0.1 - 1.5 4人力资源0.7 - 2 5人力资源0.9 - 2.3
距离= (0.88 0.86 0.91 0.9 0.86)';Tright =时间表(时间(1:5),距离)
Tright =5×1的时间表距离__ ________ 1小时0.88 - 2小时0.86 - 3小时0.91 - 4小时0.86 0.9 - 5小时

合并时间表。加入使用行倍的关键变量。

T =加入(Tleft Tright)
T =5×3的时间表交通噪声距离__ _________ _____ ________ 1小时0.8 0 0.9 0.88 - 2小时1 0.86 3人力资源0.1 1.5 0.91 4人力资源人力资源0.9 2.3 0.86 0.9 0.7 - 2 5

创建一个时间表和一个表。

测量= [0.13 0.22 0.31 0.42 0.53 0.57 0.67 0.81 0.90 1.00)';设备= [“一个”;“B”;“一个”;“B”;“一个”;“B”;“一个”;“B”;“一个”;“B”];Tleft =时间表(秒(1:10),测量,设备)
Tleft =10×2时间表看上去时间测量装置_______得一样1秒2秒0.13 0.22 B 3秒4秒0.31 0.53 0.42 B 5秒6秒0.57 B 7秒8秒0.67 0.9 0.81 B 9秒10秒1 B
设备= [“一个”;“B”];精度= [0.023,0.037];Tright =表(设备、准确性)
Tright =2×2表设备精度______月______ 0.023 B 0.037

合并的时间表和表。设备是关键变量因为TleftTright有一个变量的名称。T是一个时间表。

T =加入(Tleft Tright)
T =10×3的时间表时间测量设备精度______ _______ ______月______ 1秒2秒0.023 0.13 0.023 0.31 0.22 B 0.037 3秒4秒0.42 B 0.037 5秒0.53 0.023 0.67 6秒0.57 0.037 B 7秒0.023 8秒0.81 B 0.037 9秒0.9 0.023 0.037 10秒1 B

输入参数

全部折叠

左表,指定为一个表或一个时间表。对所有关键变量,每一行的Tleft必须完全匹配一行吗Tright

正确的表,指定为一个表或一个时间表。对所有关键变量,每一行的Tright必须完全匹配一行吗Tleft

名称-值参数

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

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

变量作为键指定为逗号分隔组成的“钥匙”一个正整数,向量的正整数,特征向量,单元阵列的特征向量,字符串数组,或逻辑向量。

你不能使用“钥匙”名称-值对论点的“LeftKeys”“RightKeys”名称-值对参数。

表标签从输入向量的行或时间表可以是一个关键,单独或结合其他关键变量。行标签是一个表的行名称或行乘以一个时间表。使用这个向量作为一个关键,指定它“行”(一个表的行名称),正如它的名字行乘以一个时间表向量,或作为的价值T.Properties.DimensionNames {1},在那里T是表或时间表。

为了向后兼容,您还可以指定的值“钥匙”作为“RowNames”TleftTright表有行名称。然而,最佳实践是指定的值“钥匙”正如它的名字行向量的名字。

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

例子:“钥匙”,{' X ', ' Y '}使用的变量命名XYTleftTright作为关键变量。

例子:“钥匙”,“行”使用行名称的向量TleftTright关键变量,如果两个TleftTright表有行名称。

变量作为键Tleft,指定为逗号分隔两人组成的“LeftKeys”一个正整数,向量的正整数,特征向量,单元阵列的特征向量,字符串数组,或逻辑向量。

你必须使用“LeftKeys”名称-值对参数结合“RightKeys”名称-值对的论点。“LeftKeys”“RightKeys”都必须指定相同数量的关键变量。加入对键值在TleftTright根据他们的订单。

表标签从输入向量的行或时间表可以是一个关键,单独或结合其他关键变量。行标签是一个表的行名称或行乘以一个时间表。使用这个向量作为一个关键,指定它“行”(一个表的行名称),正如它的名字行乘以一个时间表向量,或作为的价值T.Properties.DimensionNames {1},在那里T是表或时间表。

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

变量作为键Tright,指定为逗号分隔两人组成的“RightKeys”一个正整数,向量的正整数,特征向量,单元阵列的特征向量,字符串数组,或逻辑向量。

你必须使用“RightKeys”名称-值对参数结合“LeftKeys”名称-值对的论点。“LeftKeys”“RightKeys”都必须指定相同数量的关键变量。加入对键值在TleftTright根据他们的订单。

表标签从输入向量的行或时间表可以是一个关键,单独或结合其他关键变量。行标签是一个表的行名称或行乘以一个时间表。使用这个向量作为一个关键,指定它“行”(一个表的行名称),正如它的名字行乘以一个时间表向量,或作为的价值T.Properties.DimensionNames {1},在那里T是表或时间表。

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

变量Tleft包括在T,指定为逗号分隔两人组成的“LeftVariables”一个正整数,向量的正整数,特征向量,单元阵列的特征向量,字符串数组,或逻辑向量。

您可以使用“LeftVariables”包括或排除关键变量,以及nonkey变量T。然而,你不能包含行名称或行乘以Tleft,因为他们不变量。

默认情况下,加入包括所有的变量Tleft

变量Tright包括在T,指定为逗号分隔两人组成的“RightVariables”一个正整数,向量的正整数,特征向量,单元阵列的特征向量,字符串数组,或逻辑向量。

您可以使用“RightVariables”包括或排除关键变量,以及nonkey变量T。然而,你不能包含行名称或行乘以Tright,因为他们不变量。

默认情况下,加入包括所有的变量Tright除了关键变量。

变量的加入只保留副本Tleft,指定为逗号分隔两人组成的“KeepOneCopy”一个特征向量,单元阵列特征向量,或指定变量名的字符串数组。

一旦出现在关键变量T,但如果nonkey发生在使用相同名称的变量TleftTright,然后加入保留两个副本在T默认情况下。使用“KeepOneCopy”名称-值对仅保留副本Tleft

例子:KeepOneCopy, Var2仅保留副本Tleftnonkey变量的Var2

输出参数

全部折叠

合并后的数据TleftTright,返回一个表或一个时间表。桌上,T,为每一行都包含一行Tleft出现在相同的顺序。

加入创建T通过横向连接Tleft (:, LeftVars)Tright (iright RightVars)。默认情况下,LeftVars所有的变量吗Tleft,RightVars所有nonkey变量来自哪里Tright。否则,LeftVars由指定的变量“LeftVariables”名称-值对的观点,RightVars由指定的变量“RightVariables”名称-值对的论点。

如果TleftTright包含nonkey变量同名,加入增加了一个独特的后缀中相应的变量名T,除非你指定“KeepOneCopy”名称-值对的论点。

如果Tleft是一个表,然后呢T也是一个表。如果Tleft是一个时间表,Tright一个时间表或一个表呢T是一个时间表。

你可以储存额外的元数据T单位描述等变量,变量名,行名称。有关更多信息,请参见属性的部分时间表

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

更多关于

全部折叠

关键变量

变量用于匹配和组合之间的数据输入表TleftTright

键值

价值的一个关键变量TleftTright

算法

加入函数首先找到一个或多个关键变量。然后,加入使用的关键变量找到输入表中的行Tright匹配输入表中每一行Tleft,结合这些行创建一个输出表行T

  • 如果有一个键值之间的一对一映射TleftTright,然后加入类型的数据Tright并附加表Tleft

  • 如果有多对一映射键值之间TleftTright,然后加入排序和重复的数据Tright之前添加到表中Tleft

  • 如果有数据的关键变量Tright这并不映射到一个关键的价值Tleft,然后加入不包括数据输出表中,T

扩展功能

介绍了R2013b