Info

此问题已关闭。 请重新打开它进行编辑或回答。

hi, i have set of numbers as following :

1 次查看(过去 30 天)
mohammed elmenshawy
关闭: MATLAB Answer Bot 2021-8-20
Z=[1,5,7,4,3,6,77,88,34,73,58,97,23,55,30,49,86,76,64,64,54,54,65,76,76,62,83,59,62,57,48]; How to choose 10 random numbers from these numbers??

回答(1 个)

Walter Roberson
Walter Roberson 2017-7-12
Z(randperm(length(Z),10))
  5 个评论
Walter Roberson
Walter Roberson 2017-7-12
Breaking it up into steps:
random_index = randperm(length(Z));
Z(random_index(1:10))
That is, you start by taking a random permutation of the 31 possible indices into Z. Then you take 10 of those, so you get 10 unique indices into Z. Then you index Z at those locations to have chosen 10 random elements without replacement.
The code
Z(randperm(length(Z),10))
does this in one step.
Jan
Jan 2017-7-12
@mohammed: You do not need:
Z = (randperm(length(Z), 10));
but:
SelectedZ = Z(randperm(length(Z), 10));

此问题已关闭。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by