How do I limit the values in an array?

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

>> 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

That doesn't work if A is an array. It gives an error
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 MATLAB Mobile 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!