Each of the variables A,B,C follows a normal distribution with E(A)=E(B)=E(C)=1,V(A)=1,V(B)=2,V(C)=4. Correlation between A-B=0.2,B-C=0,AC=0.8. We are given three independent uniform (on[0,1]) random observations 0.426,0.238,0.927. From these three random numbers, generate a set of values of A,B,C justifying your method.

We just have started learning simulation and generating random numbers. This question completely flew over my head. How to involve correlation and generate 3 random normal numbers from 3 independent uniform.Is there any way, without using the error function?

  • 1
    $\begingroup$ See stats.stackexchange.com/search?q=Box+Muller for one efficient simple method. There are many other methods that do not require transcendental functions like the error function, because many other distributions (including Gamma, Beta, Chi-squared, F-ratio) have straightforward relationships with the Normal distribution. $\endgroup$
    – whuber
    Commented Apr 24, 2019 at 14:36

1 Answer 1


Using the decomposition $$f_{A,B,C}(a,b,c)=f_{A}(a)f_{B|A}(b|a)f_{C|A,B}(c|a,b)$$ of the joint Normal density into one Normal marginal density and two Normal conditional densities leads to the representation $$A=F_A^{-1}(U_1)\quad B=F_{B|A}^{-1}(U_2|A)\quad C=F_{C|A,B}^{-1}(U_3|A,B)$$ where the three inverse cfs (or quantile functions) are location scale transforms of the standard Normal inverse cdf (see, eg, qnorm in R).

  • $\begingroup$ How are we getting three separated inverse transforms? And still didn't realize how to use this here. Really sorry for the late reply. Was involved more with my other courses. $\endgroup$ Commented Apr 28, 2019 at 19:32
  • $\begingroup$ Do you agree with the decomposition of the joint into three progressively conditional densities? Simulating $(A,B,C)$ means simulating $A$, then $B$ conditional on the simulated $A$, then $C$ conditional on the simulated $A$ and $B$. $\endgroup$
    – Xi'an
    Commented Apr 29, 2019 at 11:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.