[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

From |
sjsamuels@gmail.com |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: prediction of model using svy-commands |

Date |
Sat, 10 Oct 2009 09:30:02 -0400 |

The answer to Rune's question is "No". -prvalue- will not give the proper CI's with survey data. -adjust- is not the answer. For one, Rune wants to specify the entire prediction equation, something that -adjust- doesn't do. Also, neither -prvalue- nor -adjust- will hold the other predictors at their -svy- weighted means. (See: http://www.stata.com/statalist/archive/2008-09/msg00667.html for code that makes -adjust- do it for -svy: logit-.) The solution is to use -predictnl- after -svy: mlogit- . -Steve On Fri, Oct 9, 2009 at 5:23 PM, Michael I. Lichter <mlichter@buffalo.edu> wrote: > Rune, > > Here's one additional idea. Use -adjust-. I believe that the standard error > of a predicted Y-hat is slightly different from the standard error of an > adjusted Y-bar, but perhaps the latter will be good enough for you. Note > that you will have to tell -adjust- to restrict its calculations to the > estimation sample if that's what you want; -prvalue- does this > automatically. You should get identical point estimates from both, but wider > confidence intervals from -adjust-. > > The following program shows that -adjust- and -prvalue- generate the same > point estimates, and that they generate *nearly* the same CIs for the > non-survey regression, but the confidence intervals using -adjust- for the > survey regression are clearly wider, as you would expect. > > ----- > clear all > sysuse auto > set seed 20091009 > bysort foreign: gen psu = runiform() >= .5 > svyset psu [pw=mpg], strata(foreign) > reg price weight > prvalue, x(weight=2000) > adjust weight=2000 if e(sample), ci > svy: reg price weight > prvalue, x(weight=2000) > adjust weight=2000 if e(sample), ci > ----- > > Output edited to show only -adjust- and -prvalue- > > > . reg price weight > . prvalue, x(weight=2000) > > regress: Predictions for price > > 95% Conf. Interval > Predicted y: 4081.4 [ 3137, 5025.9] > > weight > x= 2000 > > . adjust weight=2000 if e(sample), ci > > ------------------------------------------------------------------------------- > Dependent variable: price Command: regress > Covariate set to value: weight = 2000 > ------------------------------------------------------------------------------- > > ---------------------------------------------- > All | xb lb ub > ----------+----------------------------------- > | 4081.42 [3120.83 5042.01] > ---------------------------------------------- > Key: xb = Linear Prediction > [lb , ub] = [95% Confidence Interval] > > > > . svy: reg price weight > > . prvalue, x(weight=2000) > > regress: Predictions for price > > 95% Conf. Interval > Predicted y: 4241.1 [ 4067.2, 4415.1] > > weight > x= 2000 > > . adjust weight=2000 if e(sample), ci > > ------------------------------------------------------------------------------- > Dependent variable: price Command: regress > Covariate set to value: weight = 2000 > ------------------------------------------------------------------------------- > > ---------------------------------------------- > All | xb lb ub > ----------+----------------------------------- > | 4241.12 [3859.26 4622.99] > ---------------------------------------------- > Key: xb = Linear Prediction > [lb , ub] = [95% Confidence Interval] > > > Michael > > > Rune Nielsen wrote: >> >> Michael, >> your solution works out fine, thank you. I created dummys for my >> variables, and then set version to 10.1. >> >> However, in their 2006 "Regression Models for Categorical Dependent >> Variables Using Stata" Long and Freeze says that "Unfortunately, our SPost >> commands do not work when the svy prefix is specified." So, now my question >> is whether I can trust the confidence intervals that the prvalue produces? >> >> Grateful if anyone could answer this. >> >> Best wishes >> >> Rune >> >> >> >> >> >> Den 8. okt. 2009 kl. 19.31 skrev Michael I. Lichter: >> >>> Rune, >>> >>> I was hoping somebody with Stata 11.0 would answer you. That not being >>> the case ... >>> >>> 1. On J Scott Long's SPost web site, he says "Stata 11 news: The package >>> spost9_ado does not work with factor variables. We have updated prchange (v >>> 1.8.1) and countfit (0.8.1) to work with Stata 11. We are still working with >>> StataCorp to make SPost work with mlogit under Stata 11. In the short run, >>> the easiest thing is run mlogit under version control. So instead of: >>> "mlogit y a b c" use "version 10.1: mlogit y a b c" Then the SPost commands >>> should work fine. If you encounter other problems using Stata 11, let us >>> know. 10Sep09." (http://www.indiana.edu/~jslsoc/spost.htm) >>> >>> 2. I presume you were aware of this and that's why you did not use factor >>> variables directly in -prvalue-. Nevertheless, -prvalue- is complaining >>> about factor variables. Have you tried creating dummy variables and using >>> those instead? You can use, e.g., -tab GOLDogrestr, gen(GOLD)- to do this. >>> You don't have to try it with the whole model ... unless it works with a >>> partial model. >>> >>> 3. You could also try what he suggests for mlogit: "version 10.1: svy: >>> regress y a b c". >>> >>> 4. If I knew how to calculate confidence intervals for predictions I >>> would tell you. Perhaps somebody else will chime in. Short of that, I can >>> tell you that prvalue.ado calls _peciml.ado to find the upper and lower >>> bounds, and you can see it with -viewsource _peciml.ado-. >>> >>> Michael >>> >>> >>> Rune Nielsen wrote: >>>> >>>> Hi, I'm using stata 11.0 on a Mac with os 10.6. I'm using spost 9. After >>>> setting the survey parameters I try running this regression: >>>> /svyset [pweight=vekt_alle], strata(kilde)/ >>>> /svy: regress log_kost i.GOLDogrestr i.kjonn_omv i.smoke_bin alder2006 >>>> i.utdannelse_omv if har364dg==1 & n474==100/ >>>> >>>> when I try using prvalue: >>>> /prvalue, x(_IGOLDogres_2=0 _IGOLDogres_3=0 _IGOLDogres_4=0 >>>> _Ikjonn_omv_1=0.415 _Ismoke_bin_1=0.559 _Iutdannels_1=0.479 >>>> _Iutdannels_2=0.3047 alder2006=61.868) / >>>> >>>> I get this error: >>>> >>>> /factor variables and time-series operators not allowed/ >>>> >>>> However, if I try doing this without the svy-prefix, spost manages to >>>> predict nicely. I'm not that skilled, so perhaps there is some kind of >>>> obvious error in my commands? >>>> >>>> Best wishes, >>>> >>>> Rune >>>> >>>> >>>> Den 8. okt. 2009 kl. 09.42 skrev Michael I. Lichter: >>>> >>>>> What version of Stata are you using, what version of spost, what >>>>> command line are you using, and what do you mean by "not possible"? In Stata >>>>> 10.1, using spost9, I just ran -svy: reg depvar age gender- followed by >>>>> -prvalue, x(age=50)- and got a sensible answer from -prvalue- (I did not, >>>>> however, verify that the answer was correct). >>>>> >>>>> Michael >>>>> >>>>> Rune Nielsen wrote: >>>>>> >>>>>> Dear statalist-members, >>>>>> I'm running a model (multiple linear regression) using the >>>>>> /svy/-prefix to adjust for a stratified sample. The outcome is >>>>>> log-transformed due to large left-skewing. >>>>>> I would like to do some predictions using prvalue from the >>>>>> spost-package. However, this is not possible when I've used the >>>>>> survey-version of/ regress/. Does anybody know a simple solution to this? >>>>>> I've already tried running the model without svy, but specifying pweight and >>>>>> vce(cluster clustervar), but then I don't get reliable confidence intervals. >>>>>> Grateful for any answers (in simple language for a non-statician) >>>>>> >>>>>> Best wishes, >>>>>> >>>>>> Rune Nielsen >>>>>> >>>>>> --- >>>>>> Rune Nielsen, MD, research fellow >>>>>> Institute of Medicine, Bergen, Norway >>>>> >>>>> -- >>>>> Michael I. Lichter, Ph.D. <mlichter@buffalo.edu >>>>> <mailto:mlichter@buffalo.edu>> >>>>> Research Assistant Professor & NRSA Fellow >>>>> UB Department of Family Medicine / Primary Care Research Institute >>>>> UB Clinical Center, 462 Grider Street, Buffalo, NY 14215 >>>>> Office: CC 126 / Phone: 716-898-4751 / FAX: 716-898-3536 >>>>> >>>>> * >>>>> * 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/ >>>> >>> >>> -- >>> Michael I. Lichter, Ph.D. <mlichter@buffalo.edu> >>> Research Assistant Professor & NRSA Fellow >>> UB Department of Family Medicine / Primary Care Research Institute >>> UB Clinical Center, 462 Grider Street, Buffalo, NY 14215 >>> Office: CC 126 / Phone: 716-898-4751 / FAX: 716-898-3536 >>> >>> * >>> * 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/ > > -- > Michael I. Lichter, Ph.D. <mlichter@buffalo.edu> > Research Assistant Professor & NRSA Fellow > UB Department of Family Medicine / Primary Care Research Institute > UB Clinical Center, 462 Grider Street, Buffalo, NY 14215 > Office: CC 126 / Phone: 716-898-4751 / FAX: 716-898-3536 > > * > * 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/ > -- Steven Samuels sjsamuels@gmail.com 18 Cantine's Island Saugerties NY 12477 USA 845-246-0774 * * 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/

**Follow-Ups**:**Re: st: prediction of model using svy-commands***From:*sjsamuels@gmail.com

**References**:**st: prediction of model using svy-commands***From:*Rune Nielsen <nielsenrune@me.com>

**Re: st: prediction of model using svy-commands***From:*"Michael I. Lichter" <MLichter@Buffalo.EDU>

**Re: st: prediction of model using svy-commands***From:*Rune Nielsen <nielsenrune@me.com>

**Re: st: prediction of model using svy-commands***From:*"Michael I. Lichter" <mlichter@buffalo.edu>

**Re: st: prediction of model using svy-commands***From:*Rune Nielsen <nielsenrune@me.com>

**Re: st: prediction of model using svy-commands***From:*"Michael I. Lichter" <mlichter@buffalo.edu>

- Prev by Date:
**Re: st: An alternative for -micombine- to use MI data with -xtlogit-** - Next by Date:
**st: AUTO: Arne Bueschemann ist außer Haus (Rückkehr am 26.10.2009)** - Previous by thread:
**Re: st: prediction of model using svy-commands** - Next by thread:
**Re: st: prediction of model using svy-commands** - Index(es):

© Copyright 1996–2014 StataCorp LP | Terms of use | Privacy | Contact us | What's new | Site index |