Using normrnd for generating natural values (without decimal values)
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I would like to generate data with average of 27 and standard deviation of 1.41, but I would like the data have no decimal values, ex to be like this 12, 24, 27 ... . Could you please help me how I can do so?
4 commentaires
Walter Roberson
le 14 Juin 2022
You cannot use the fact that the sum of identically distributed uniform distribution approximates normal. You can generate 54 binary values and sum them. That will have a mean of 27, but the std will be 3.67.
Réponses (1)
Sam Chak
le 14 Juin 2022
Modifié(e) : Sam Chak
le 14 Juin 2022
How about this data set {25, 26, 27, 27, 28, 29}?
A = [25, 26, 27, 27, 28, 29]
M = mean(A)
S = std(A)
5 commentaires
Walter Roberson
le 14 Juin 2022
[x1, x2, x3, x4, x5, x6] = ndgrid(27-4:27+4);
meanmask = (x1 + x2 + x3 + x4 + x5 + x6)/6 == 27;
sx1 = x1(meanmask); sx2 = x2(meanmask); sx3 = x3(meanmask);
sx4 = x4(meanmask); sx5 = x5(meanmask); sx6 = x6(meanmask);
sx = [sx1, sx2, sx3, sx4, sx5, sx6];
st = std(sx, [], 2);
inrange = st >= 1.405 & st < 1.415;
values_that_work = sx(inrange,:);
whos values_that_work
unique(sort(values_that_work, 2), 'rows')
360 matches... but to within permutations they are all the same.
Notice that, as predicted by my analysis, no deviations of 4 or 3 match, only -2, -1, 0, 0, +1, +2
Sam Chak
le 15 Juin 2022
Many thanks to @Walter Roberson for explaning and showing the Permutation search procedure. The permutation-based method is effective.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!