Объедините две таблицы или расписания ключевыми переменными использования строк
таблицы объединений или расписания T
= join(Tleft
,Tright
)Tleft
и Tright
использование ключевых переменных. Все переменные с теми же именами в обеих таблицах являются ключевыми переменными. Табличное соединение добавляет строки из правильной таблицы, где ее ключевые переменные совпадают со значениями в ключевых переменных стола, из-за которого встают. Например, если Tleft
имеет переменные под названием Key1
и Var1
, и Tright
имеет переменные Key1
и Var2
, затем T=join(Tleft,Tright)
использование Key1
как ключевая переменная.
Совпадающие значения ключевых переменных в левых и правых таблицах не должны быть в том же порядке. Кроме того, ключевые переменные Tright
должен содержать все значения в ключевых переменных Tleft
. Каждое значение должно произойти только однажды в ключевых переменных Tright
, но может произойти многократно в ключевых переменных Tleft
.
Входные параметры могут быть таблицами, расписаниями или одним из каждого.
Если Tleft
таблица, затем join
возвращает T
как таблица.
Если Tleft
расписание, затем join
возвращает T
как расписание.
Векторы из меток строки Tleft
и Tright
могут быть ключевые переменные. Метки строки являются именами строки таблицы, или времена строки расписания.
соединяет таблицы или расписания с дополнительными опциями, заданными одним или несколькими T
= join(Tleft
,Tright
,Name,Value
)Name,Value
парные аргументы.
Например, можно задать который переменные использовать в качестве ключевых переменных.
Составьте таблицу, Tleft
.
Tleft = table({'Janice','Jonas','Javier','Jerry','Julie'}',[1;2;1;2;1],... 'VariableNames',{'Employee' 'Department'})
Tleft=5×2 table
Employee Department
__________ __________
{'Janice'} 1
{'Jonas' } 2
{'Javier'} 1
{'Jerry' } 2
{'Julie' } 1
Составьте таблицу, Tright
, с переменной вместе с Tleft
.
Tright = table([1 2]',{'Mary' 'Mona'}',... 'VariableNames',{'Department' 'Manager'})
Tright=2×2 table
Department Manager
__________ ________
1 {'Mary'}
2 {'Mona'}
Составьте новую таблицу, T
, содержа данные из таблиц Tleft
и Tright
. Используйте join
функционируйте, чтобы повторить и добавить Manager
данные из таблицы Tright
к данным из таблицы Tleft
, на основе ключевой переменной, Department
.
T = join(Tleft,Tright)
T=5×3 table
Employee Department Manager
__________ __________ ________
{'Janice'} 1 {'Mary'}
{'Jonas' } 2 {'Mona'}
{'Javier'} 1 {'Mary'}
{'Jerry' } 2 {'Mona'}
{'Julie' } 1 {'Mary'}
Составьте таблицу, Tleft
.
Tleft = table([5;12;23;2;6],... {'cereal';'pizza';'salmon';'cookies';'pizza'},... 'VariableNames',{'Age','FavoriteFood'},... 'RowNames',{'Amy','Bobby','Holly','Harry','Sally'})
Tleft=5×2 table
Age FavoriteFood
___ ____________
Amy 5 {'cereal' }
Bobby 12 {'pizza' }
Holly 23 {'salmon' }
Harry 2 {'cookies'}
Sally 6 {'pizza' }
Составьте таблицу, Tright
, с одной переменной вместе с Tleft
.
Tright = table({'cereal';'cookies';'pizza';'salmon';'cake'},... [110;160;140;367;243],... {'B';'D';'B-';'A';'C-'},... 'VariableNames',{'FavoriteFood','Calories','NutritionGrade'})
Tright=5×3 table
FavoriteFood Calories NutritionGrade
____________ ________ ______________
{'cereal' } 110 {'B' }
{'cookies'} 160 {'D' }
{'pizza' } 140 {'B-'}
{'salmon' } 367 {'A' }
{'cake' } 243 {'C-'}
Составьте новую таблицу, T
, с данными из таблиц Tleft
и Tright
. Переменная вместе, FavoriteFood
, используется в качестве ключевой переменной join
функция.
T = join(Tleft,Tright)
T=5×4 table
Age FavoriteFood Calories NutritionGrade
___ ____________ ________ ______________
Amy 5 {'cereal' } 110 {'B' }
Bobby 12 {'pizza' } 140 {'B-'}
Holly 23 {'salmon' } 367 {'A' }
Harry 2 {'cookies'} 160 {'D' }
Sally 6 {'pizza' } 140 {'B-'}
Таблица T
не включает информацию из последней строки таблицы Tright
о 'cake'
потому что нет никакой соответствующей записи в таблице Tleft
.
Составьте таблицу, Tleft
.
Tleft = table([10;4;2;3;7],[5;4;9;6;1],[10;3;8;8;4])
Tleft=5×3 table
Var1 Var2 Var3
____ ____ ____
10 5 10
4 4 3
2 9 8
3 6 8
7 1 4
Составьте таблицу, Tright
, предоставление Var2
из таблицы Tright
то же содержимое как Var2
из таблицы Tleft
.
Tright = table([6;1;1;6;8],[5;4;9;6;1])
Tright=5×2 table
Var1 Var2
____ ____
6 5
1 4
1 9
6 6
8 1
Составьте новую таблицу, T
, содержа данные из таблиц Tleft
и Tright
. Используйте Var2
в таблицах Tleft
и Tright
как ключевая переменная к join
функция.
T = join(Tleft,Tright,'Keys','Var2')
T=5×4 table
Var1_Tleft Var2 Var3 Var1_Tright
__________ ____ ____ ___________
10 5 10 6
4 4 3 1
2 9 8 1
3 6 8 6
7 1 4 8
join
добавляет уникальный суффикс к неключевой переменной, Var1
, отличать данные из таблиц Tleft
и Tright
.
Составьте новую таблицу с данными из таблиц Tleft
и Tright
. Если какие-либо неключевые переменные имеют то же имя в обеих таблицах, сохраните только копию с таблицы Tleft
.
Составьте таблицу, Tleft
.
Tleft = table([10;4;2;3;7],[5;4;9;6;1])
Tleft=5×2 table
Var1 Var2
____ ____
10 5
4 4
2 9
3 6
7 1
Составьте таблицу, Tright
, предоставление Var2
из таблицы Tright
то же содержимое как Var2
из таблицы Tleft
.
Tright = table([6;1;1;6;8],[5;4;9;6;1],[10;3;8;8;4])
Tright=5×3 table
Var1 Var2 Var3
____ ____ ____
6 5 10
1 4 3
1 9 8
6 6 8
8 1 4
Составьте новую таблицу, T
, с данными из таблиц Tleft
и Tright
. Используйте Var2
как ключевая переменная к join
функционируйте и сохраните только копию Var1
из таблицы Tleft
. Выходная таблица T
не содержит Var1
данные из таблицы Tright
.
T = join(Tleft,Tright,'Keys','Var2','KeepOneCopy','Var1')
T=5×3 table
Var1 Var2 Var3
____ ____ ____
10 5 10
4 4 3
2 9 8
3 6 8
7 1 4
Составьте таблицу, Tleft
.
Tleft = table(['M';'M';'F';'F';'F'],[38;43;38;40;49],... 'VariableNames',{'Gender' 'Age'},... 'RowNames',{'Smith' 'Johnson' 'Williams' 'Jones' 'Brown'})
Tleft=5×2 table
Gender Age
______ ___
Smith M 38
Johnson M 43
Williams F 38
Jones F 40
Brown F 49
Составьте таблицу, Tright
, таким образом, что строки Tleft
и строки Tright
имейте взаимно-однозначное соответствие.
Tright = table([64;69;67;71;64],... [119;163;133;176;131],... [122 80; 109 77; 117 75; 124 93; 125 83],... 'VariableNames',{'Height' 'Weight' 'BloodPressure'},... 'RowNames',{'Brown' 'Johnson' 'Jones' 'Smith' 'Williams'})
Tright=5×3 table
Height Weight BloodPressure
______ ______ _____________
Brown 64 119 122 80
Johnson 69 163 109 77
Jones 67 133 117 75
Smith 71 176 124 93
Williams 64 131 125 83
Составьте новую таблицу, T
, с данными из таблиц Tleft
и Tright
. Используйте векторы из имен строки как ключевые переменные. (Именем вектора из имен строки таблицы является 'Row'
, как показано Tleft.Properties.DimensionNames{1}
.)
T = join(Tleft,Tright,'Keys','Row')
T=5×5 table
Gender Age Height Weight BloodPressure
______ ___ ______ ______ _____________
Smith M 38 71 176 124 93
Johnson M 43 69 163 109 77
Williams F 38 64 131 125 83
Jones F 40 67 133 117 75
Brown F 49 64 119 122 80
Строки T
находятся в том же порядке как Tleft
.
Составьте таблицу, Tleft
.
Tleft = table([10;4;2;3;7],[5;4;9;6;1],[10;3;8;8;4])
Tleft=5×3 table
Var1 Var2 Var3
____ ____ ____
10 5 10
4 4 3
2 9 8
3 6 8
7 1 4
Составьте таблицу, Tright
, предоставление Var2
из таблицы Tright
то же содержимое как Var1
из таблицы Tleft
, но в различном порядке.
Tright = table([6;1;1;6;8],[2;3;4;7;10])
Tright=5×2 table
Var1 Var2
____ ____
6 2
1 3
1 4
6 7
8 10
Составьте новую таблицу, T
, содержа данные из таблиц Tleft
и Tright
. Используйте Var1
из таблицы Tleft
с Var2
из таблицы Tright
как ключевые переменные к join
функция.
[T,iright] = join(Tleft,Tright,'LeftKeys',1,'RightKeys',2)
T=5×4 table
Var1_Tleft Var2 Var3 Var1_Tright
__________ ____ ____ ___________
10 5 10 8
4 4 3 1
2 9 8 6
3 6 8 1
7 1 4 6
iright = 5×1
5
3
1
2
4
T
горизонтальная конкатенация Tleft
и Tright(iright,1)
.
Создайте два расписания, которые имеют те же времена строки, но различные переменные.
Traffic = [0.8 0.9 0.1 0.7 0.9]'; Noise = [0 1 1.5 2 2.3]'; Tleft = timetable(hours(1:5)',Traffic,Noise)
Tleft=5×2 timetable
Time Traffic Noise
____ _______ _____
1 hr 0.8 0
2 hr 0.9 1
3 hr 0.1 1.5
4 hr 0.7 2
5 hr 0.9 2.3
Distance = [0.88 0.86 0.91 0.9 0.86]'; Tright = timetable(hours(1:5)',Distance)
Tright=5×1 timetable
Time Distance
____ ________
1 hr 0.88
2 hr 0.86
3 hr 0.91
4 hr 0.9
5 hr 0.86
Объедините расписания. join
использует времена строки в качестве ключевых переменных.
T = join(Tleft,Tright)
T=5×3 timetable
Time Traffic Noise Distance
____ _______ _____ ________
1 hr 0.8 0 0.88
2 hr 0.9 1 0.86
3 hr 0.1 1.5 0.91
4 hr 0.7 2 0.9
5 hr 0.9 2.3 0.86
Создайте расписание и таблицу.
Measurements = [0.13 0.22 0.31 0.42 0.53 0.57 0.67 0.81 0.90 1.00]'; Device = ['A';'B';'A';'B';'A';'B';'A';'B';'A';'B']; Tleft = timetable(seconds(1:10)',Measurements,Device)
Tleft=10×2 timetable
Time Measurements Device
______ ____________ ______
1 sec 0.13 A
2 sec 0.22 B
3 sec 0.31 A
4 sec 0.42 B
5 sec 0.53 A
6 sec 0.57 B
7 sec 0.67 A
8 sec 0.81 B
9 sec 0.9 A
10 sec 1 B
Device = ['A';'B']; Accuracy = [0.023;0.037]; Tright = table(Device,Accuracy)
Tright=2×2 table
Device Accuracy
______ ________
A 0.023
B 0.037
Объедините расписание и таблицу. Device
ключевая переменная потому что оба Tleft
и Tright
имейте переменную с тем именем. T
расписание.
T = join(Tleft,Tright)
T=10×3 timetable
Time Measurements Device Accuracy
______ ____________ ______ ________
1 sec 0.13 A 0.023
2 sec 0.22 B 0.037
3 sec 0.31 A 0.023
4 sec 0.42 B 0.037
5 sec 0.53 A 0.023
6 sec 0.57 B 0.037
7 sec 0.67 A 0.023
8 sec 0.81 B 0.037
9 sec 0.9 A 0.023
10 sec 1 B 0.037
Tleft
— Стол, из-за которого встают,Стол, из-за которого встают, в виде таблицы или расписания. Для всех ключевых переменных, каждой строки Tleft
должен совпадать точно с одной строкой в Tright
.
Tright
— Правильная таблицаПравильная таблица в виде таблицы или расписания. Для всех ключевых переменных, каждой строки Tright
должен совпадать точно с одной строкой в Tleft
.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Keys',2
использует вторую переменную в Tleft
и вторая переменная в Tright
как ключевые переменные.Keys
— Переменные, чтобы использовать в качестве ключейПеременные, чтобы использовать в качестве ключей в виде разделенной запятой пары, состоящей из 'Keys'
и положительное целое число, вектор из положительных целых чисел, вектора символов, массива ячеек из символьных векторов, массива строк или логического вектора.
Вы не можете использовать 'Keys'
аргумент пары "имя-значение" с 'LeftKeys'
и 'RightKeys'
аргументы в виде пар имя-значение.
Вектор из меток строки из входной таблицы или расписания может быть ключевым, один или в сочетании с другими ключевыми переменными. Метки строки являются именами строки таблицы или времена строки расписания. Чтобы использовать этот вектор в качестве ключа, задайте его как 'Row'
(для имен строки таблицы), как имя вектора расписания времен строки, или как значение
, где T
.Properties.DimensionNames {1}
таблица или расписание.T
Для обратной совместимости можно также задать значение 'Keys'
как 'RowNames'
когда Tleft
и Tright
таблицы с именами строки. Однако лучшая практика должна задать значение 'Keys'
как имя вектора из имен строки.
Пример: 'Keys',[1 3]
использует первые и третьи переменные из Tleft
и Tright
как ключевые переменные.
Пример: 'Keys',{'X','Y'}
использует переменные под названием X
и Y
в Tleft
и Tright
как ключевые переменные.
Пример: 'Keys','Row'
использует векторы из имен строки Tleft
и Tright
как ключевые переменные, если оба Tleft
и Tright
таблицы с именами строки.
LeftKeys
— Переменные, чтобы использовать в качестве ключей в Tleft
Переменные, чтобы использовать в качестве ключей в Tleft
В виде разделенной запятой пары, состоящей из 'LeftKeys'
и положительное целое число, вектор из положительных целых чисел, вектора символов, массива ячеек из символьных векторов, массива строк или логического вектора.
Необходимо использовать 'LeftKeys'
аргумент пары "имя-значение" в сочетании с 'RightKeys'
аргумент пары "имя-значение". 'LeftKeys'
и 'RightKeys'
оба должны задать то же количество ключевых переменных. join
значения ключа пар в Tleft
и Tright
на основе их порядка.
Вектор из меток строки из входной таблицы или расписания может быть ключевым, один или в сочетании с другими ключевыми переменными. Метки строки являются именами строки таблицы или времена строки расписания. Чтобы использовать этот вектор в качестве ключа, задайте его как 'Row'
(для имен строки таблицы), как имя вектора расписания времен строки, или как значение
, где T
.Properties.DimensionNames {1}
таблица или расписание.T
Пример: 'LeftKeys',1
использование только первая переменная в Tleft
как ключевая переменная.
RightKeys
— Переменные, чтобы использовать в качестве ключей в Tright
Переменные, чтобы использовать в качестве ключей в Tright
В виде разделенной запятой пары, состоящей из 'RightKeys'
и положительное целое число, вектор из положительных целых чисел, вектора символов, массива ячеек из символьных векторов, массива строк или логического вектора.
Необходимо использовать 'RightKeys'
аргумент пары "имя-значение" в сочетании с 'LeftKeys'
аргумент пары "имя-значение". 'LeftKeys'
и 'RightKeys'
оба должны задать то же количество ключевых переменных. join
значения ключа пар в Tleft
и Tright
на основе их порядка.
Вектор из меток строки из входной таблицы или расписания может быть ключевым, один или в сочетании с другими ключевыми переменными. Метки строки являются именами строки таблицы или времена строки расписания. Чтобы использовать этот вектор в качестве ключа, задайте его как 'Row'
(для имен строки таблицы), как имя вектора расписания времен строки, или как значение
, где T
.Properties.DimensionNames {1}
таблица или расписание.T
Пример: 'RightKeys',3
использование только третья переменная в Tright
как ключевая переменная.
LeftVariables
— Переменные из Tleft
включать в T
Переменные из Tleft
включать в T
В виде разделенной запятой пары, состоящей из 'LeftVariables'
и положительное целое число, вектор из положительных целых чисел, вектора символов, массива ячеек из символьных векторов, массива строк или логического вектора.
Можно использовать 'LeftVariables'
включать или исключить ключевые переменные, а также неключевые переменные, от T
. Однако вы не можете включить имена строк или времена строки от Tleft
, потому что они не переменные.
По умолчанию, join
включает все переменные из Tleft
.
RightVariables
— Переменные из Tright
включать в T
Переменные из Tright
включать в T
В виде разделенной запятой пары, состоящей из 'RightVariables'
и положительное целое число, вектор из положительных целых чисел, вектора символов, массива ячеек из символьных векторов, массива строк или логического вектора.
Можно использовать 'RightVariables'
включать или исключить ключевые переменные, а также неключевые переменные, от T
. Однако вы не можете включить имена строк или времена строки от Tright
, потому что они не переменные.
По умолчанию, join
включает все переменные из Tright
кроме ключевых переменных.
KeepOneCopy
— Переменные, для который join
сохраняет только копию с Tleft
Переменные, для который join
сохраняет только копию с Tleft
В виде разделенной запятой пары, состоящей из 'KeepOneCopy'
и вектор символов, массив ячеек из символьных векторов или массив строк, который задает имена переменных.
Ключевые переменные появляются однажды в T
, но если неключевые переменные с идентичными именами происходят в Tleft
и Tright
, затем join
сохраняет обе копии в T
по умолчанию. Используйте 'KeepOneCopy'
пара "имя-значение", чтобы сохранить только копию с Tleft
.
Пример: 'KeepOneCopy',Var2
сохраняет только копию с Tleft
из неключевой переменной Var2
.
T
— Объединенные данные из Tleft
и Tright
Объединенные данные из Tleft
и Tright
, возвращенный как таблица или расписание. Таблица, T
, содержит одну строку для каждой строки в Tleft
, появление в том же порядке.
join
создает T
путем горизонтальной конкатенации Tleft(:,LeftVars)
и Tright(iright,RightVars)
. По умолчанию, LeftVars
все переменные Tleft
, и RightVars
все неключевые переменные из Tright
. В противном случае, LeftVars
состоит из переменных, заданных 'LeftVariables'
аргумент пары "имя-значение" и RightVars
состоит из переменных, заданных 'RightVariables'
аргумент пары "имя-значение".
Если Tleft
и Tright
содержите неключевые переменные с тем же именем, join
добавляет уникальный суффикс к соответствующим именам переменных в T
, если вы не задаете 'KeepOneCopy'
аргумент пары "имя-значение".
Если Tleft
таблица, затем T
также таблица. Если Tleft
расписание и Tright
или расписание или таблица, затем T
расписание.
Можно сохранить дополнительные метаданные в T
, такой как описания, переменные модули, имена переменных и имена строки. Для получения дополнительной информации смотрите разделы Свойств table
или timetable
.
iright
— Индексируйте к Tright
Индексируйте к Tright
, возвращенный как вектор-столбец. Каждый элемент iright
идентифицирует строку в Tright
это соответствует той строке в выходной таблице или расписании, T
.
Переменная раньше совпадала и комбинировала данные между входными таблицами Tleft
и Tright
.
Значение в ключевой переменной Tleft
или Tright
.
join
функционируйте сначала находит одну или несколько ключевых переменных. Затем join
использует ключевые переменные, чтобы найти строку во входной таблице Tright
это совпадает с каждой строкой во входной таблице Tleft
, и объединения те строки, чтобы создать строку в выходной таблице T
.
Если существует взаимно-однозначное отображение между значениями ключа в Tleft
и Tright
, затем join
сортирует данные в Tright
и добавляет его к таблице Tleft
.
Если существует отображение many-one между значениями ключа в Tleft
и Tright
, затем join
виды и повторения данные в Tright
прежде, чем добавить его к таблице Tleft
.
Если существуют данные в ключевой переменной Tright
это не сопоставляет со значением ключа в Tleft
, затем join
не включает те данные в выходную таблицу, T
.
Указания и ограничения по применению:
Чтобы соединить длинное расписание и длинную таблицу, расписание должно быть первым входом к join
.
Для получения дополнительной информации см. Раздел "Высокие массивы".
Указания и ограничения по применению:
В общем случае входные таблицы не могут иметь неключевых переменных с теми же именами. Однако можно соединить подмножества входных таблиц, если вы задаете аргументы name-value:
'KeepOneCopy'
, где вы перечисляете переменные, чтобы взять из левой входной таблицы только.
'LeftVariables'
и 'RightVariables'
, где вы перечисляете переменные, чтобы взять или из левой входной таблицы или из правильной входной таблицы, но не обоих.
Значения этих аргументов name-value должны быть постоянными:
'Keys'
'LeftKeys'
'RightKeys'
'LeftVariables'
'RightVariables'
'KeepOneCopy'
Вложенные таблицы и расписания не поддерживаются.
backgroundPool
или ускорьте код с Parallel Computing Toolbox™ ThreadPool
.Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.