hi, i have set of numbers as following :
Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Ältere Kommentare anzeigen
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 Kommentar
Star Strider
am 12 Jul. 2017
Antworten (1)
Walter Roberson
am 12 Jul. 2017
Z(randperm(length(Z),10))
5 Kommentare
Or if repetitions are wanted:
Z(randi([1, length(Z)], 1, 10))
mohammed elmenshawy
am 12 Jul. 2017
Bearbeitet: mohammed elmenshawy
am 12 Jul. 2017
Adam
am 12 Jul. 2017
You didn't use the code correctly. You don't assign it to Z, you index into Z.
Walter Roberson
am 12 Jul. 2017
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
am 12 Jul. 2017
@mohammed: You do not need:
Z = (randperm(length(Z), 10));
but:
SelectedZ = Z(randperm(length(Z), 10));
Diese Frage ist geschlossen.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!