hi, i have set of numbers as following :

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??

Risposte (1)

Z(randperm(length(Z),10))

5 Commenti

Jan
Jan il 12 Lug 2017
Modificato: Jan il 12 Lug 2017
Or if repetitions are wanted:
Z(randi([1, length(Z)], 1, 10))
mohammed elmenshawy
mohammed elmenshawy il 12 Lug 2017
Modificato: mohammed elmenshawy il 12 Lug 2017
No . I want to randomly select from the previous numbers and not from the length of the Z array? when apply this code, show the following
You didn't use the code correctly. You don't assign it to Z, you index into Z.
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.
@mohammed: You do not need:
Z = (randperm(length(Z), 10));
but:
SelectedZ = Z(randperm(length(Z), 10));

Questa domanda è chiusa.

Tag

Chiuso:

il 20 Ago 2021

Community Treasure Hunt

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

Start Hunting!

Translated by