how do i select a number from a set randomly
Afficher commentaires plus anciens
I want to select 1 or -1, my code now looks like this:
if true
% code
for i = 1:101
for j = 1:5
%action may be -1 or 1
ac = [-1,1];
posA = randi(length(ac));
Asimulac(i,j) = ac(posA);
posB = randi(length(ac));
Bsimulac(i,j) = ac(posB);
end
end
end
It works but posA and posB keeps being the same for every loop in j=1:5, which is not what I want. In otherwords Asimulac(i,j) = Bsimulac(i,j). How do I really randomly draw from the set [-1,1]?
Réponses (2)
V = [-1,+1]; % or any set of values
V(randperm(numel(V),1)) % pick one out of the set
James Tursa
le 18 Mai 2017
If you are just interested in the values -1 and 1, you could do something like this:
Asimulac = round(rand(101,5))*2-1;
Bsimulac = round(rand(101,5))*2-1;
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!