Changing values in vector

1 view (last 30 days)
Mr.Chandler
Mr.Chandler on 16 Nov 2020
Commented: Mr.Chandler on 16 Nov 2020
Hello I have 1000 datas created by "randn" (A=randn(1,1000)). I want to change every value(n) which is not suitable for 1 < abs(A(n)) < 10. Also, new values should have been created by randn again. And it should provides the 1 < abs(A(n)) < 10 condition. So, I think have to create for loop for changing values until they provide the condition. How can I do that?

Accepted Answer

Setsuna Yuuki.
Setsuna Yuuki. on 16 Nov 2020
Edited: Setsuna Yuuki. on 16 Nov 2020
You can try this code
a = abs(randn(1,1000))
cont = 1;
while cont < length(a)+1
if(a(cont) < 1 || a(cont) > 10)
a(cont) = randn(1);
cont = 0;
end
cont = cont+1;
end
  3 Comments
Setsuna Yuuki.
Setsuna Yuuki. on 16 Nov 2020
ohh i didn't see it, but it should work without abs()
Mr.Chandler
Mr.Chandler on 16 Nov 2020
Yes, I think it is okay. I arrange it a little bit. Thanks so much.

Sign in to comment.

More Answers (0)

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!