How to generate k unique random numbers from 1 to n in matlab 2009
1 次查看(过去 30 天)
显示 更早的评论
Hi, I knew randperm(n,k) works but this is after 2011. Can some one tell me if there is any efficient way to do it in matlab 2009.
Thanks
0 个评论
采纳的回答
Azzi Abdelmalek
2013-4-27
[idx,idx]=sort(rand(1,n));
out=idx(1:k)
1 个评论
Jan
2013-4-27
The result is biased, because Matlab's sort is stable. The effects are very tiny and they appear in Matlab's randperm function with 1 input argument also.
更多回答(2 个)
Jan
2013-4-27
Not biased and faster than sorting a RAND vector: http://www.mathworks.com/matlabcentral/fileexchange/27076-shuffle
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!