Joining two tables with two common columns
10 次查看(过去 30 天)
显示 更早的评论
Hi ,
I have two tables A and B. They have two common columns:
A's columns are Date, ID, col1, col2 etc...
B's columns are Date, X1, ID, X2 etc....
Columns 1 and 2 of A match columns 1 and 3 from B. "tried join, innerjoin functions and received errors probably because A and B have multiple columns that are different:. My question is how to produce table C that has every row in A and the rows of B that match those of A .So C would be somethings like [ Date,ID, col1,col2 ,X2,X2,etc...];I don't want the columns 1 and 3 in B to be reproduced (so, I don't want C to appear like [ Date1,ID1, col1,col2 ,Date2,ID2,X2,X2,etc...] and I want the rows of A that are not matched by B to have nans .
I am wondering what is the right command for this :
Dor example I tried
C= innerjoin(A,B,,'LeftKeys',[1,2],'RightKeys',[1,3]);
I received:
Error: Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for
mismatched delimiters.
2 个评论
dpb
2020-6-21
The error message is just a syntax problem -- you've got an extra comma in there...
I've never wrapped my head around inner/outer join so whether it'll do what you want or not I dunno', but
C= innerjoin(A,B,'LeftKeys',[1,2],'RightKeys',[1,3]);
should at least produce something...
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!