Random numbers from array
14 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Mohammad
le 7 Nov 2015
Commenté : Walter Roberson
le 14 Juil 2024
Suppose I have the following array A=[2,1,5,6,20,55,6,9,100,1000,325,2301] which contains distinct numbers I want to select for example four elements from the array randomly and then delete them from the original array. For example if the selected numbers were 20,2,9,325 so the new array R=[20,2,9,325] and A=the remaining elements.
0 commentaires
Réponse acceptée
Geoff Hayes
le 7 Nov 2015
Modifié(e) : Geoff Hayes
le 7 Nov 2015
Mohammed - just use randperm to generate four random numbers that you can use as indices into your array. Try the following
% generate the four random indices
randIdcs = randperm(length(A),4);
% initialize R to be the four numbers of A
R = A(randIdcs);
% remove those four numbers from A
A(randIdcs) = [];
If order is important, then just sort the output of randperm
randIdcs = sort(randperm(length(A),4));
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!