Normally distributed pseudorandom numbers using randn

Why doesn't
EDU>> r = 10.5 + 1.*randn(1,10);
EDU>> mean(r)
ans =
10.5848
return a mean of 10.5 if I specified that this set of pseudorandom numbers should have a mean of 10.5 in the command line?

 Réponse acceptée

Wayne King
Wayne King le 27 Sep 2013
Modifié(e) : Wayne King le 27 Sep 2013
You cannot expect it to have exactly a mean of 10.5 in one realization of the random vector. If you repeat that experiment a large number of times, you will see the mean of the means will come very close to 10.5
for nn = 1:1e4
x = 10.5+randn(1,10);
meanz(nn) = mean(x);
end
mean(meanz)
Just taking a sample from a N(mu,sigma^2) population does not guarantee the mean of the sample will be mu. You have to look at the sampling distribution of the sample mean.

Plus de réponses (0)

Catégories

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

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by