How to generate using Gauss command for a normal distribution with any mean and variance?
2 Answers
0
To compute random numbers which are normally distributed with a mean mu
and variance sigma
, you multiply the result of rndn
by the square root of sigma
and adding mu
like this:
// Mean of random numbers
mu = 8.2;
// Variance of random numbers
sigma2 = 5.4;
// Number of observations to create
nobs = 1e6;
// Create random numbers N(mu, sigma2)
X = rndn(nobs, 1) * sqrt(sigma2) + mu;
print meanc(X);
print varCovXs(X);
The above code should create random normal numbers with a mean near 8.2 and a variance near 5.4. If you want to be able to make some reusable code, you could create a procedure like this:
x = rndn2(100, 1, 0.5, 1.4);
proc (1) = rndn2(nobs, c, mu, sigma2);
retp(rndn(nobs, c) * sqrt(sigma2) + mu);
endp;
0
Thanks. Where does the “mu “ enter into this command in your first code? I cannot see anything after “sig”.
Your Answer
2 Answers
To compute random numbers which are normally distributed with a mean mu
and variance sigma
, you multiply the result of rndn
by the square root of sigma
and adding mu
like this:
// Mean of random numbers
mu = 8.2;
// Variance of random numbers
sigma2 = 5.4;
// Number of observations to create
nobs = 1e6;
// Create random numbers N(mu, sigma2)
X = rndn(nobs, 1) * sqrt(sigma2) + mu;
print meanc(X);
print varCovXs(X);
The above code should create random normal numbers with a mean near 8.2 and a variance near 5.4. If you want to be able to make some reusable code, you could create a procedure like this:
x = rndn2(100, 1, 0.5, 1.4);
proc (1) = rndn2(nobs, c, mu, sigma2);
retp(rndn(nobs, c) * sqrt(sigma2) + mu);
endp;
Thanks. Where does the “mu “ enter into this command in your first code? I cannot see anything after “sig”.