choose some random number from the given number matlab

 Respuesta aceptada

Patrik Ek
Patrik Ek el 28 de Jul. de 2014
Editada: Patrik Ek el 28 de Jul. de 2014
Ok, I assume that the example "a=[1 1 2 4 5 1 1 1]; than the answer should be b= 1 3 1" had a typo and that you want to randomly select a number of samples from a vector a. This is how I normally do it.
a=[0.1,0.1,0.1,0.2,0.3];
nSamples = 3;
tmp = rand(size(a));
[~,idx] = sort(tmp);
idx = idx(1:nSamples);
b = a(idx);
clear tmp;
This creates a vector of randomly generated numbers, from an uniform distribution and when sorted, the random numbers will be linearly increasing and the original indices will be uniformly distributed.

Más respuestas (0)

Categorías

Más información sobre Random Number Generation en Centro de ayuda y File Exchange.

Etiquetas

Aún no se han introducido etiquetas.

Preguntada:

el 28 de Jul. de 2014

Editada:

el 28 de Jul. de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by