Borrar filtros
Borrar filtros

functions to exclude repetitions

2 visualizaciones (últimos 30 días)
Nicolò
Nicolò el 4 de Abr. de 2013
hello everyone, I want to know if there is a function that allows me, through a random variable, to run my code with all the elements of a matrix 1xn without repetition. here's an example of what i want to do:
Caos = [1:10]; %is my matrix
a = min(Caos); %minimum value of "Caos"
b = max(Caos); %maximum value of "Caos"
c = length(Caos);
d = 0; %counter
R = randi([a b],1); %random variable that's I don't want to repeat
while d<c
%execute my code
d=d+1
end

Respuesta aceptada

per isakson
per isakson el 4 de Abr. de 2013
Guess:
R2 = unique( R, 'stable' );
'stable' to avoid to sort R2
  3 comentarios
Matt Kindig
Matt Kindig el 4 de Abr. de 2013
It sounds like randperm() is what you want, then. This will randomly sort all of the integers between 1 and n, where n=10 in your example. You can then iterate through the elements of this vector, which by definition will not contain repeats (simulating your lottery-ball example).
doc randperm
Nicolò
Nicolò el 5 de Abr. de 2013
randperm seems to be a good solution, i'll give it a shot.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by