random integer condition selection
1 次查看(过去 30 天)
显示 更早的评论
r1 = rand((randi(10)),1);
from these 10 random values how can I select only those that are > than 0.5
0 个评论
采纳的回答
更多回答(1 个)
John D'Errico
2020-7-10
You want to generate a random number of random numbers? With an additional constraint that all are greater than 0.5? This is far esier than you think. (You had an unnecessary pair of parens in your code.)
r1 = rand(randi(10),1);
So that generate a random length vector of uniform random numbers between 0 and 1. But if you wanted to have all of them be numbers between .5 and 1, this is easy.
r1 = (1 + rand(randi(10),1))/2;
So adding 1 to a number between 0 and 1 makes it lie between 1 and 2. If you then divide by 2, it will fall always betweem .5 and 1.
The result is a vector of random length, where all lie between .5 and 1.
2 个评论
John D'Errico
2020-7-10
Your stated final requirement is the result must lie between .5 and 1. I showed you how to do that.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Random Number Generation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!