Random selection of n values from a vector - which function should I use?
18 ビュー (過去 30 日間)
古いコメントを表示
I have a vector with twenty unique values from 1 to 20. I would like to select randomly two values from my vector. Which option should I use? Is there some difference between the functions attached below?
randperm
A = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20];
y = A(randperm(20,2));
randsample
y = randsample(20,2);
datasample
y = datasample(A,2);
0 件のコメント
採用された回答
Walter Roberson
2016 年 1 月 29 日
randsample() requires the Stats toolbox, and has more options such as selection with replacement.
Since your source is [1:20], you can simplify your randperm version to just
y = randperm(20,2);
but if it did not happen to be consecutive integers you could use the form you did,
A = 1:20;
y = A(randperm(numel(A),2));
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!