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?

 Akzeptierte Antwort

Wayne King
Wayne King am 27 Sep. 2013
Bearbeitet: Wayne King am 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.

Weitere Antworten (0)

Kategorien

Mehr zu Random Number Generation finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 27 Sep. 2013

Kommentiert:

am 27 Sep. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by