Generate Normal, T, Chi-square, F distributions

Post date: Sep 25, 2010 2:36:35 AM

set obs 3000 gen u1=uniform() gen z1=invnorm(u1) graph twoway (histogram z1, width(0.1)) (function y=(1/sqrt(2*_pi))*exp(-0.5*x^2), range(-4 4)) graph twoway (histogram z1, width(0.1)) (function y=normalden(x), range(-4 4)) kdensity(z1) gen u2=uniform() gen z2=invnorm(u2) gen u3=uniform() gen z3=invnorm(u3) gen u4=uniform() gen z4=invnorm(u4) gen u5=uniform() gen z5=invnorm(u5) drop u1 u2 u3 u4 u5 gen x23=z1^2 + z2^2 + z3^2 gen x24=z1^2 + z2^2 + z3^2 + z4^2 gen x25=z1^2 + z2^2 + z3^2 + z4^2 + z5^2 drop if x24>20 graph twoway (histogram x24, width(0.1)) (function y=(1/(1*2^2))*(x*exp(-0.5*x)), range(0 20)) kdensity(x24) gen t4=z5/(x24/4) drop if t4<-4 | t4>4 graph twoway (histogram t4, width(0.1)) (function y=tden(4,x), range(-4 4)) kdensity(t4) gen x22=x25-x23 gen f32=x23/x22 drop if f32>10 graph twoway (histogram f32, width(0.1)) (function y=Fden(3,2,x), range(0 10)) kdensity(f32)