How to produce an array that displays the common data values in other arrays?
1 view (last 30 days)
Show older comments
I am trying to find a way to make a resulting array that displays all of the common values (in the same row/colomn) that multiple arrays share. I attached an example photo to explain what I mean. So, as you can see in the photo, I am trying to produce the resulting array called "Total" by using the shared values from A, B, and C.
0 Comments
Accepted Answer
More Answers (1)
Matlab Pro
on 4 Jun 2024
Hi @Jacey
Your question is not clear enogh
I have changed a,b &c to hold also other values than 0,1
The result is :
- "ind" holding the indexes of matching values and
- "common" - holding the actual common values
a = [5 1 0;1 22 1;0 0 3];
b = [5 0 1;0 22 0; 1 0 3];
c = [5 1 1;1 22 0;1 0 3];
a_and_b = a==b;
b_and_c = b==c;
a_and_b_and_c = a_and_b == b_and_c;
ind = find(a_and_b_and_c)
common = a(a_and_b_and_c)
1 Comment
Matlab Pro
on 4 Jun 2024
.. and to get the total (logical):
a = [5 1 0;1 22 1;0 0 3];
b = [5 0 1;0 22 0; 1 0 3];
c = [5 1 1;1 22 0;1 0 3];
a_and_b = a==b;
b_and_c = b==c;
a_and_b_and_c = a_and_b == b_and_c;
ind = find(a_and_b_and_c);
total = false(size(a));
total(ind) = true;
See Also
Categories
Find more on Numeric Types 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!