Thanks to Rosy for answering the supplementary question.
The underlying principle is explicit in the
Statalist FAQ:
http://www.stata.com/support/faqs/res/statalist.html#advice
"The current version of Stata is 9. Please specify if you
are using an earlier version; otherwise, the answer to your
question is likely to refer to commands or features
unavailable to you."
Incidentally, -levelsof- is not a plug-in. In Stata, that
has a specific meaning, on which see the help for -plugin-.
-levelsof- is an official Stata command defined by
an .ado file.
Nick
[email protected]
Rosy Reynolds
> The Stata8 equivalent of -levelsof- was just called -levels-.
> And labmask will work fine in Stata8 (or 7 for that matter).
MA V
> > Thanks so much for your suggestion.
> > One question: I have version 8.2 of Stata so I don't have
> the "levelsof"
> > command. Is there anyway of geeting this plug-in for my
> version? Or is
> > there a similar version of this command for Stata 8.2? I
> believe this
> > command would be very useful to me even in other contexts
> (that not the > > value labels).
Nick Cox
> >>Thanks for the plug. I'd have to recommend -labmask-
> >>myself as probably the most user-friendly solution here.
> >>
> >>If it didn't exist, the problem yields to a few lines.
> >>
> >>* check the assumption of correspondence in
> >>your desired direction:
> >>
> >>bysort var1 (var2) : assert var2[1] == var2[_N]
> >>
> >>(compare:
> >>How do I list observations in a group that differ on a variable?
> >>http://www.stata.com/support/faqs/data/diff.html)
> >>
> >>* get the distinct values of -var2-:
> >>
> >>levelsof var2, local(levels)
> >>
> >>foreach l of local levels {
> >> su var1 if var2 == "`l'", meanonly
> >> label def var1 `r(min)' "`l'", add
> >>}
> >>
> >>By assumption the values of -var1- given -var2-
> >>are identical. So we can do a look-up by a -summarize-
> >>of those values, and add a new value label each
> >>time around the loop.
> >>
> >>Then we link the labels to the variable:
> >>
> >>label val var1 var1
Rosy Reynolds
> >> > Nick Cox's nifty program -labmask-, part of the -labutil-
> >> > suite, will do the
> >> > job. It assigns the values (or optionally value labels) of
> >> > one variable as
> >> > the value labels of another.
> >> > -findit labutil-
MA V
> >> > > I have the following in my data:
> >> > > obs var1 var2
> >> > > 1 304 House
> >> > > 2 666 Land
> >> > > 3 200 Building
> >> > > 4 304 House
> >> > > 5 304 House
> >> > > ... ... ....
> >> > >
> >> > > where var2 contains the labels for var1. Since I have many
> >> > labels it will
> >> > > not be easy to create the labels for var1 by hand. Is
> there an easy
> >> > > procedure to make stata recognize that there is an unique
> >> > correspondence
> >> > > between var1 and var2 and to label var1 using var2?
*
* 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/