Randomly select an element

Hello. I have an array: A=[4 8 7 9 5] How to I randomly select an element from the array? Thanks a lot.

 Accepted Answer

KL
KL on 16 Nov 2017
Edited: KL on 16 Nov 2017

3 Comments

Thank you. I have just tried that but when i am running the code several times, I am getting only 9. Is it really random?
KL
KL on 16 Nov 2017
Edited: KL on 16 Nov 2017
Yes, it is. The documentation says so. You could test it like,
A=[4 8 7 9 5];
A_rand = zeros(1,15);
for k = 1:numel(A_rand)
A_rand(1,k) = randsample(A,1);
end
now the result is,
A_rand =
5 5 5 4 9 8 7 5 9 8 4 7 5 7 4
Another alternative is to create the index randomly but that's pretty much the same,
A(randi([1 numel(A)],1)) or A(randperm(numel(A),1))
Alright. Thank you. Much appreciated.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 16 Nov 2017

Commented:

on 16 Nov 2017

Community Treasure Hunt

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

Start Hunting!