Alternatively,
egen newvar = group(oldvar) if oldvar != 0
replace newvar = 0 if newvar == .
This exploits the fact the -egen, group()- never yields 0 as a result.
Nick
[email protected]
Tirthankar Chakravarty
Well, in your case (non-negative values) it is easy. Simply subtract 1
from the -group-ed variable:
*******************
sysuse auto, clear
tab mpg
recode mpg (18=0) // change 18 to 0
egen new = group(mpg)
replace new = new - 1
tab new
*******************
On Sat, Aug 22, 2009 at 4:24 PM, Frank Gallo<[email protected]> wrote:
> So the syntax "egen newvar = group(oldvar)" achieves my goal for one
> variable. But for another variable, I have "0" values that I want to keep
> and do not include in the grouping. I tried adding the if qualifier [egen
> newvar = group(oldvar) if oldvar > 0] but this transformed the 0s to
> missing. I would greatly appreciate any suggestions. Thank you.
*
* 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/