How can I generate random numbers

I have along data series which contains 3451 elements. From this I want to select 1/3 rd of the elements for validation purpose and the remaining for test. How can I randomly make the selection randomly? Thanks .

 Réponse acceptée

Image Analyst
Image Analyst le 14 Avr 2013
Modifié(e) : Image Analyst le 14 Avr 2013

0 votes

Use randperm(), as this demo illustrates:
% Define the number of elements to use.
numberOfElements = 3451;
oneThird = int32(floor(numberOfElements / 3));
% Get all the indexes scrambled in a random order.
randomOrder = int32(randperm(3451));
% Select a third of them for "Validation."
indexesForValidation = randomOrder(1:oneThird);
% Select the remainder of them for "testing."
indexesForTesting = randomOrder(oneThird+1:end);

4 commentaires

Ede gerlderlands
Ede gerlderlands le 14 Avr 2013
Thank you...
Ede gerlderlands
Ede gerlderlands le 14 Avr 2013
Sorry I think Index for testing doesn't seems to work for me.
Image Analyst
Image Analyst le 14 Avr 2013
Modifié(e) : Image Analyst le 14 Avr 2013
I fixed a small bug. Try it now.
Ede gerlderlands
Ede gerlderlands le 14 Avr 2013
yes , it works tnx.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Random Number Generation dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by