Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Miranda Kim <mirandakim@hotmail.co.uk> |
To | <statalist@hsphsun2.harvard.edu> |
Subject | RE: st: Re: Plotting regression coefficients |
Date | Wed, 2 Jun 2010 13:23:19 +0100 |
Thanks a lot to Roger, Martin and Nick for a range of useful solutions, very much appreciated!! Best wishes, Miranda ---------------------------------------- > Date: Wed, 2 Jun 2010 13:01:33 +0100 > From: r.newson@imperial.ac.uk > To: statalist@hsphsun2.harvard.edu > Subject: Re: st: Re: Plotting regression coefficients > > Yes, there is. The -parmest- package has a -stars()- option, allowing > the user to generate a string variable containing the stars for the > P-value. And -eclplot- has an -addplot()- option, allowing the user to > add the stars to the plot as a superimposed additional plot. > > So, if we wanted 1 star for P-values at or below 0.05, 2 stars for > P-values at or below 0.01, and 3 stars for P-values at or below 0.001, > and we wanted the stars to be just above the upper confidence limits, > then Martin's code might be revised to read: > > ************* > clear* > set obs 10000 > //get Roger`s -parmest- > capt which parmest > if _rc ssc inst parmest > gen personid=_n > gen bmi0 = rnormal() > gen bmi4 = rnormal() > gen bmi6 = rnormal() > gen bmi8 = rnormal() > gen gluc = 1+.3*bmi0-.2*bmi4-.1*bmi6+.5*bmi8+rnormal(0,10) > la var gluc "2-h glucose concentration" > la var bmi0 "BMI at birth" > la var bmi4 "BMI at age 4" > la var bmi6 "BMI at age 6" > la var bmi8 "BMI at age 8" > reshape long bmi, i(personid) j(age) > qui parmby "regr gluc bmi",by(age) saving(myfile, replace /// > stars(0.05 0.01 0.001) > u myfile, clear > keep if parm=="bmi" > l age estimate min95 max95 p, sepby(age) noo > > eclplot estimate min95 max95 age, eplottype(scatter) /// > rplottype(rcap) supby(parm ,) estopts( sort ) ciopts( ) /// > addplot(scatter max95 age, msym(none) mlab(stars) mlabpos(12)) > > ************* > > I hope this helps. > > Best wishes > > Roger > > > Roger B Newson BSc MSc DPhil > Lecturer in Medical Statistics > Respiratory Epidemiology and Public Health Group > National Heart and Lung Institute > Imperial College London > Royal Brompton Campus > Room 33, Emmanuel Kaye Building > 1B Manresa Road > London SW3 6LR > UNITED KINGDOM > Tel: +44 (0)20 7352 8121 ext 3381 > Fax: +44 (0)20 7351 8322 > Email: r.newson@imperial.ac.uk > Web page: http://www.imperial.ac.uk/nhli/r.newson/ > Departmental Web page: > http://www1.imperial.ac.uk/medicine/about/divisions/nhli/respiration/popgenetics/reph/ > > Opinions expressed are those of the author, not of the institution. > > On 02/06/2010 12:47, Miranda Kim wrote: >> I wonder is there a way of plotting stars that represent the significance of the respective p-value above each regression coefficient (95%CI), in the eclplot generated by Martin's code below? >> Many thanks, >> Miranda >> ************* >> clear* >> set obs 10000 >> //get Roger`s -parmest- >> capt which parmest >> if _rc ssc inst parmest >> gen personid=_n >> gen bmi0 = rnormal() >> gen bmi4 = rnormal() >> gen bmi6 = rnormal() >> gen bmi8 = rnormal() >> gen gluc = 1+.3*bmi0-.2*bmi4-.1*bmi6+.5*bmi8+rnormal(0,10) >> la var gluc "2-h glucose concentration" >> la var bmi0 "BMI at birth" >> la var bmi4 "BMI at age 4" >> la var bmi6 "BMI at age 6" >> la var bmi8 "BMI at age 8" >> reshape long bmi, i(personid) j(age) >> qui parmby "regr gluc bmi",by(age) saving(myfile, replace) >> u myfile, clear >> keep if parm=="bmi" >> l age estimate min95 max95 p, sepby(age) noo >> >> eclplot estimate min95 max95 age, /* */ eplottype(scatter) rplottype(rcap) /* */ supby(parm ,) estopts( sort ) ciopts( ) >> ************* >> Martin Weiss wrote: >> <> You are more than welcome! >> >> For the y-line, just add >> ************* >> yline(0, lpattern(dash_dot) style(default) ) >> ************* >> to the -eclplot- call. Change the pattern according to your taste (-help >> linepatternstyle-)... >> >> HTH >> Martin >> >> -----Ursprüngliche Nachricht----- >> Von: owner-statalist@hsphsun2.harvard.edu >> [mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Miranda Kim >> Gesendet: Mittwoch, 20. Januar 2010 10:56 >> An: statalist@hsphsun2.harvard.edu >> Betreff: Re: AW: st: AW: Plotting regression coefficients >> Thank you so much Martin, this looks fantastic! >> I had never used either parmest or eclplot! >> Do you know how I could add a horizontal dotted line at zero? >> Best wishes, >> Miranda >> Martin Weiss wrote: >> <> >> Here is a solution employing -ssc d parmest- and -reshape- >> >> ************* >> clear* >> set obs 10000 >> //get Roger`s -parmest- >> capt which parmest >> if _rc ssc inst parmest >> gen personid=_n >> gen bmi0 = rnormal() >> gen bmi4 = rnormal() >> gen bmi6 = rnormal() >> gen bmi8 = rnormal() >> gen gluc = 1+.3*bmi0-.2*bmi4-.1*bmi6+.5*bmi8+rnormal(0,10) >> la var gluc "2-h glucose concentration" >> la var bmi0 "BMI at birth" >> la var bmi4 "BMI at age 4" >> la var bmi6 "BMI at age 6" >> la var bmi8 "BMI at age 8" >> reshape long bmi, i(personid) j(age) >> qui parmby "regr gluc bmi",by(age) saving(myfile, replace) >> u myfile, clear >> keep if parm=="bmi" >> l age estimate min95 max95 p, sepby(age) noo >> >> eclplot estimate min95 max95 age, /* */ eplottype(scatter) rplottype(rcap) /* */ supby(parm ,) estopts( sort ) ciopts( ) >> ************* >> >> HTH >> Martin >> >> -----Ursprüngliche Nachricht----- >> Von: owner-statalist@hsphsun2.harvard.edu >> [mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Martin Weiss >> Gesendet: Mittwoch, 20. Januar 2010 10:35 >> An: statalist@hsphsun2.harvard.edu >> Betreff: AW: st: AW: Plotting regression coefficients >> >> <> >> Sounds like a case for a -reshape long- to me, before you even >> -regress-... >> >> HTH >> Martin >> >> -----Ursprüngliche Nachricht----- >> Von: owner-statalist@hsphsun2.harvard.edu >> [mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Miranda Kim >> Gesendet: Mittwoch, 20. Januar 2010 10:26 >> An: statalist@hsphsun2.harvard.edu >> Betreff: Re: st: AW: Plotting regression coefficients >> Thank you Martin, Alan and Nick for your replies, >> I'm sorry I didn't give enough description of my dataset. As it is currently structured I have each line (observation) corresponding to a distinct person. I have five variables for each individual (five columns in my dataset): >> gluc = 2-h glucose concentration >> bmi0 = BMI at birth >> bmi4 = BMI at age 4 >> bmi6 = BMI at age 6 >> bmi8 = BMI at age 8 >> I could simply type >> reg gluc bmi0 >> reg gluc bmi4 >> etc. >> saving the regression coefficients (and CIs) along the way, and then plotting them. >> But I didn't know if this was a long-winded way of going about it. >> Many thanks >> Miranda >> Blood glucose vs. BMI at birth >> Blood glucose vs. BMI at age 4 >> Blood glucose vs. BMI at age 6 >> Blood glucose vs. BMI at age 8 >> >> Martin Weiss wrote: >> <> >> Apart from -statsby-, -ssc d parmest- by Roger Newson may be useful for >> you... >> >> HTH >> Martin >> >> -----Ursprüngliche Nachricht----- >> Von: owner-statalist@hsphsun2.harvard.edu >> [mailto:owner-statalist@hsphsun2.harvard.edu] Im Auftrag von Miranda Kim >> Gesendet: Dienstag, 19. Januar 2010 18:03 >> An: statalist@hsphsun2.harvard.edu >> Betreff: st: Plotting regression coefficients >> I am using Stata v11 >> >> I would like to run four regressions of the same outcome variable on a given predictor at four different timepoints. For example: >> Blood glucose vs. BMI at birth >> Blood glucose vs. BMI at age 4 >> Blood glucose vs. BMI at age 6 >> Blood glucose vs. BMI at age 8 >> >> Then I would like to plot the four regression coefficients and respective confidence intervals on the same graph, with time as the >> x-axis. >> I wonder what the most straightforward way of producing such a plot would be. >> Any suggestions would be of great help. >> Many thanks, >> Miranda >> >> * >> * 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/ >> _________________________________________________________________ >> http://clk.atdmt.com/UKM/go/195013117/direct/01/ >> We want to hear all your funny, exciting and crazy Hotmail stories. Tell us now >> * >> * 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/ _________________________________________________________________ http://clk.atdmt.com/UKM/go/197222280/direct/01/ We want to hear all your funny, exciting and crazy Hotmail stories. Tell us now * * 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/