How do I limit the values in an array?

309 views (last 30 days)
This should be an easy one.
If I have an array with...
0.203 0.506 0.167 0.904 1.671 5.247 0.037 0.679
How do I amend the individual values within the array that are greater than 1 and set them to 1?
e.g.
0.203 0.506 0.167 0.904 1.000 1.000 0.037 0.679
Thanks!

Accepted Answer

ES
ES on 12 Jul 2017
>> a = [0.203 0.506 0.167 0.904 1.671 5.247 0.037 0.679];
>> a(a>1)=1

More Answers (1)

Jan Siegmund
Jan Siegmund on 27 May 2020
Edited: Jan Siegmund on 27 May 2020
There is also a matlab function doing this:
A = min(A,1);
It takes A if A is the minimum of the two and 1 if 1 is the minimum of the two.
  2 Comments
Tim Kuipers
Tim Kuipers on 30 Nov 2020
That doesn't work if A is an array. It gives an error
Walter Roberson
Walter Roberson on 30 Nov 2020
min(randn(3,3),1) works fine when I test it. Perhaps you accidentally defined min as a variable

Sign in to comment.

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!