Simple programming question about randomizing a vector.

1 visualización (últimos 30 días)
Helen Kirby
Helen Kirby el 14 de En. de 2017
Comentada: Helen Kirby el 14 de En. de 2017
clc
clear
ones = ones(1,20);
twos = ones+1;
thrs = twos+1;
fors = thrs+1;
fivs = fors+1;
Nums = [ones twos thrs fors fivs];
This should be dead easy but I cannot find a command to do it. Having got my blocks of 1s,2s,3s,4s,5s, in a single vector(Nums) I would now like to scramble them so that they are all mixed up. I tried "random" and "shuffle" but they gave me errors. Does anyone know how else I can randomize or shuffle up Nums?

Respuesta aceptada

Image Analyst
Image Analyst el 14 de En. de 2017
Try randperm():
% Get new indexes all scrambled up.
randomIndexes = randperm(length(Nums));
% Extract those indexes into a new vector.
scrambledNums = Nums(randomIndexes)
  1 comentario
Helen Kirby
Helen Kirby el 14 de En. de 2017
Yep, that did it! Thank you SO much - and so fast too. Very clever. HK.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Structures en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by