Generating all ordered samples with replacement
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello everybody,
is there a function in Matlab which generates an array containing all ordered samples of length k taken from a set of n elements
, that is all the k-tuples
where each
can be any of the
, and whose total number is
?
, that is all the k-tuples
where each
can be any of the
, and whose total number is Or can anybody suggest a simple code to generate all of them? I am guessing it involves the iterative use of datasample function checking that every new generated sample is different from the previous ones, but I couldn't find so far a satisfactory way to write it
0 commentaires
Réponse acceptée
Plus de réponses (2)
Guillaume
le 7 Mai 2019
Modifié(e) : Guillaume
le 7 Mai 2019
For
and
,
n = 20;
k = 5;
result = dec2base(0:n^k-1, n); %generate all n^k samples with replacement, as char vector 0-9 + A-Z
result = result - '0' + 1; %convert character to numbers 1-10, A-Z get converted to 18+
result(result>17) = result(result>17) - 7 %convert 18+ to 11+
For greater n you'll have to use Jan's answer.
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements 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!