Advanced use of randi(x) and other random number generating functions
3 views (last 30 days)
Show older comments
Is it possible to get the randi(x) function to work with a specifically chosen set of numbers, such as 1 through 9 except 6?
From what I can tell, the function description doesn't make it seem possible. Is there a creative way around this? What about using other random number generating functions?
0 Comments
Accepted Answer
Sean de Wolski
on 18 Apr 2014
There's nothing builtin do exclude certain numbers. Of course this is accomplished with a little bit of manipulation:
x=randi(8,[5 5])
x(x>=6) = x(x>=6)+1
randperm might be your friend as well.
0 Comments
More Answers (1)
Azzi Abdelmalek
on 18 Apr 2014
your_range=[1:5 7:9]
[~,ii]=sort(rand(1,numel(your_range)))
out=your_range(ii)
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!