仅考虑 Matlab 中的公共行值按键合并数据表
Merge data tables by key considering only common row values in Matlab
仅对公共行通过Keys连接2个数据表
我想通过合并选定的键来加入 2 个数据库,但只保留共同的值。
例如有如下数据表:
A = table({'a';'a';'b';'b';'c';'c'},...
[1;2;3;4;5;6],...
{'G1';'G2';'G1';'G2';'G1';'G2'},...
'VariableNames',{'ID','Value','Group'})
B = table({'a';'a';'b';'b';'d';'d'},...
[7;8;10;9;11;12],...
{'G1';'G2';'G2';'G1';'G1';'G2'},...
'VariableNames',{'ID','Value','Group'})
我用外连接函数连接数据表如下:
C = outerjoin(A,B, 'Keys', {'ID' 'Group'}, 'MergeKeys', 1)
在输出 C 中,'c' 和 'd' ID 仍将显示为 NA' 值。我正在寻找仅包含公共值的输出(即排除包含 'c' 和 'd' ID 的行)
您需要使用innerjoin函数
C = innerjoin(A,B, 'Keys', {'ID' 'Group'})
仅对公共行通过Keys连接2个数据表
我想通过合并选定的键来加入 2 个数据库,但只保留共同的值。
例如有如下数据表:
A = table({'a';'a';'b';'b';'c';'c'},...
[1;2;3;4;5;6],...
{'G1';'G2';'G1';'G2';'G1';'G2'},...
'VariableNames',{'ID','Value','Group'})
B = table({'a';'a';'b';'b';'d';'d'},...
[7;8;10;9;11;12],...
{'G1';'G2';'G2';'G1';'G1';'G2'},...
'VariableNames',{'ID','Value','Group'})
我用外连接函数连接数据表如下:
C = outerjoin(A,B, 'Keys', {'ID' 'Group'}, 'MergeKeys', 1)
在输出 C 中,'c' 和 'd' ID 仍将显示为 NA' 值。我正在寻找仅包含公共值的输出(即排除包含 'c' 和 'd' ID 的行)
您需要使用innerjoin函数
C = innerjoin(A,B, 'Keys', {'ID' 'Group'})