Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | amir gahremanpour <gamirali@hotmail.com> |
To | statalist <statalist@hsphsun2.harvard.edu> |
Subject | RE: st: qnorm |
Date | Mon, 5 Mar 2012 10:14:58 -0600 |
Nick and Maarten, Thank you all so much for your compelling answers and explanations. I am glad I decided to bring these questions about normality and qnorm to this website. I always learn alot here, I like to call it "stata-free university" ! best regards Amir > From: n.j.cox@durham.ac.uk > To: statalist@hsphsun2.harvard.edu > Date: Mon, 5 Mar 2012 15:23:52 +0000 > Subject: RE: st: qnorm > > The approach in Maarten's program is to generate a number of random samples and show the lot as replicates. > > Here as an alternative is some example code for individual 95% confidence intervals for each plotted point. -qplot- used at the end is from SJ. The code isn't smart about missing values, but it could easily be made smarter. I also guess the code could be shortened in the middle. > > sysuse auto, clear > > mata > y = sort(st_data(., "mpg"), 1) > mean = mean(y) > sd = sqrt(variance(y)) > n = rows(y) > > compare = J(n, 0, .) > > for (j = 1; j <= 100; j++) { > compare = compare, sort(rnormal(n, 1, mean, sd), 1) > } > > envelope = J(n, 2, .) > for (i = 1; i <= n; i++) { > x = sort(compare[i,]', 1) > envelope[i,] = ((x[2] + x[3])/2, (x[97] + x[98])/2) > } > > names = tokens("_lower _upper") > (void) st_addvar("float", names) > st_store(., names, envelope) > > end > > qplot mpg _lower _upper, ms(O i i) c(. J J) legend(off) ytitle("`: var label mpg'") > > Nick > n.j.cox@durham.ac.uk > > Maarten Buis > > On Mon, Mar 5, 2012 at 10:03 AM, Nick Cox wrote: > > 1. Simulate several samples from a distribution with the same mean and > > standard deviation (or more generally an appropriate mean and standard > > deviation) and use the resulting portfolio of plots in assessing what > > kind of variability is to be expected. > > An easy way to do so is to use the -margdistfit- package, which you > can install by typing in Stata -ssc install margdistfit-. The default > is actually to first sample the mean and the standard deviation from > its sampling distribution and than sample a new variable with those > sampled means and standard deviation. I suspect that this makes sense > in most cases, though I also suspect that it won't matter much. If you > want to do exactly what Nick proposes you can add the -noparsamp- > option. > > Here is an example of what such a graph would look like: > > *-------- begin example ----------- > sysuse auto, clear > reg mpg > margdistfit, qq name(qq) > margdistfit, pp name(pp) > margdistfit, hangroot name(hangr) > margdistfit, cumul name(cumul) > *--------- end example ------------ > (For more on examples I sent to the Statalist see: > http://www.maartenbuis.nl/example_faq ) > > Hope this helps, > Maarten > > -------------------------- > Maarten L. Buis > Institut fuer Soziologie > Universitaet Tuebingen > Wilhelmstrasse 36 > 72074 Tuebingen > Germany > > > http://www.maartenbuis.nl > -------------------------- > * > * For searches and help try: > * http://www.stata.com/help.cgi?search > * http://www.stata.com/support/statalist/faq > * http://www.ats.ucla.edu/stat/stata/ > > * > * For searches and help try: > * http://www.stata.com/help.cgi?search > * http://www.stata.com/support/statalist/faq > * http://www.ats.ucla.edu/stat/stata/ * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/