Statalist


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

RE: st: RE: Create categorical variable based on 'z-score'


From   "Nick Cox" <[email protected]>
To   <[email protected]>
Subject   RE: st: RE: Create categorical variable based on 'z-score'
Date   Thu, 27 Nov 2008 12:05:11 -0000

replace z = sign(z) * ceil(abs(z)) 

is another way to do it. 

Nick 

Nick Cox 

You want to round up when positive, down when negative. 

egen z = std(foo) 
replace z = cond(z == 0, 0, cond(z > 0, ceil(z), floor(z))) 

George Hoffman

Thanks, nick. Egen std works. Can I nest floor(ceil(x)) to get the
desired
...?

Nick Cox <[email protected]>
 
> Despite various answers, no one mention -egen, std()- followed by
> -floor()- and -ceil(). All existing official Stata.

George Hoffman
 
> Generic problem: I'd like to create categorical variables for a list
of
> continuous variables. The categorical variables would be based upon
the
> z-score of each variable, such as:
> Z-score of X     catX
> <-2             -3
> -2 ..-1         -2
> -1 .. 0         -1
> 0               0
> 0.. +1          +1
> 1 ..2           +2
>> +2             +3
> 
> If there were a way to z-transform variables, I could do an easy
> recode(catX)

*
*   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/



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