How to mask cells of certain values?

27 views (last 30 days)
The following works well:
A = [1 2 3 4 5];
A > 2
0 0 1 1 1
But, how can i mask A==1 and A ==3, so getting the following result (for example putting the values that are to be masked in a vector):
mask_array = [1 2];
A ~= mask_array
0 1 0 1 1

Accepted Answer

Image Analyst
Image Analyst on 23 Sep 2018
Edited: Image Analyst on 23 Sep 2018
Try this:
mask = (A == 1) | (A == 3) % 1 for either 1 or 3
Or maybe you mean
mask = (A == 1) | (A >= 3) % 1 for 1 or anything 3 or more.
  1 Comment
Rightia Rollmann
Rightia Rollmann on 24 Sep 2018
Edited: Rightia Rollmann on 24 Sep 2018
Thanks! I meant the first solution. Is there a more compact way to write this code? (There are a large number of values that should be masked and it would be more convenient to write something like below)
OR(A == 1,3,...)

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!