Thanks for this. It's a subtle point, but
I'd say that -uvis- doesn't impute and
it shows this by putting a missing value,
rather than that it does impute and imputes
with a missing value. By the rules of Stata
it has to put something in the value of
each variable. However, the implication
is the same.
Nick
[email protected]
Quang Nguyen
> Dear Nick and Richard,
>
> Thanks so much for your advices. I highly appreciate it. Yes I do
> understand that we need to impute "y" ONLY for observations with
> missing values. Uvis, however, imputes "y" for all observations. As a
> result, the imputed "y" might has missing value if any of "x" is
> missing on a given observation. Thanks Richard for offering an
> execellent way of dealing with this interesting issue.
>
> I truly enjoy this forum where any of my question is answered just
> moments after it posted. You are GREAT!
>
> On Thu, 24 Feb 2005 23:36:07 -0000, Nick Cox
> <[email protected]> wrote:
> > No doubt this is what is often
> > wanted. But the help for -uvis-
> > is explicit:
> >
> > Note that uvis will not impute observations for which
> > a value of a variable in xvarlist is
> > missing. Only complete cases within xvarlist are used.
> >
> > Nick
> > [email protected]
> >
> > Richard Williams
> >
> > > At 10:03 PM 2/24/2005 +0000, you wrote:
> > > >You seem surprised at this.
> > > >
> > > >If you don't know -x1-, you cannot
> > > >predict -y- from -x1 x2 x3-; and
> > > >so on.
> > > >
> > > >If you do know -y- you don't need
> > > >to impute it.
> > >
> > > If I understand Quang correctly, then the latter is exactly
> > > the point.
> > > -uvis- should have just plugged in the observed value for y
> > > rather than
> > > even try to impute it; but instead, it plugged in a missing
> > > value since one
> > > or more of the Xs for that case was missing.
> > >
> > > I tried -uvis- on a data set where y was not missing but some
> > > values of x
> > > were. The generated y had missing data whereas the original
> > > y did not.
> > >
> > > I'm not that familiar with the programs but if nothing else
> > > one work around
> > > might be
> > >
> > > replace uvis_y = max(original_y, uvis_y)
> > >
> > > where uvis_y is the var generated by uvis. If I've done this
> > > correctly,
> > > then whenever -uvis- generated an unnecessary MD code for y,
> > > the original
> > > non-missing value for y will get plugged back in.
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/