data comparision in matlab
3 views (last 30 days)
Show older comments
After using image processing I have a [r c] = [1 7;2 8;3 9;4 10;5 11;6 12]; and [R C] = [2 8;1 6;4 9;3 9;6 12;8 1;0 15];
The answer should be [A B] = [2 8;3 9;6 12] I want to find all that [R C] which are in [r c]...
0 Comments
Accepted Answer
Wayne King
on 6 Nov 2012
Edited: Wayne King
on 6 Nov 2012
A = [1 7;2 8;3 9;4 10;5 11;6 12];
B = [2 8;1 6;4 9;3 9;6 12;8 1;0 15];
lia = ismember(A,B,'rows');
Anew = A(lia>0,:);
Anew contains the rows that are common.
0 Comments
More Answers (1)
Jan
on 6 Nov 2012
This is a bold question.
1. This is no valid Matlab syntax:
[r c] = [1 7;2 8;3 9;4 10;5 11;6 12];
[R C] = [2 8;1 6;4 9;3 9;6 12;8 1;0 15];
On the left hand you have two variables, on the right hand only one array in each line. It is impossible to guess, what this should mean.
2. The information "after using image processing" does not help to understand the problem. It increases the confusion level only.
3. "The answer should be [A B] = [2 8;3 9;6 12]" - beside the invalid syntax, which does not allow us to find out, what you want to achieve, you did not explain, what you have tried so far. A forum is not a "do it 4 me" machine.
4. With a lot of guessing, I assume, that ismember(R, r, 'rows') will solve your question.
0 Comments
See Also
Categories
Find more on Logical in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!