-----Original Message-----
From: [email protected] [mailto:owner-
[email protected]] On Behalf Of Kit Baum
Sent: Thursday, April 14, 2005 9:43 PM
To: [email protected]
Subject: st: re: cond(a,b,c) fn
James writes
When I use the cond(x,a,b,c) function, I could not generate the value c
when x is missing. For example:
sysuse auto, clear
tab rep78, mi
gen a=cond(rep78==1, 1, 0, .)
tab a, mi
It gives
a Freq. Percent Cum.
0 72 97.30 97.30
1 2 2.70 100.00
Total 74 100.00
There should be 5 missing values for variable a according to the manual.
Thanks for your input.
The online help says
cond(x,a,b,c) returns a if x evaluates to true (not 0), b if x
evaluates to false
(0), and c if x evaluates to missing (.).
Since "rep78==1" never evaluates to missing, a will never be set to
missing.
A way to achieve this is
. g a = (rep78==1)*rep78/rep78
. tab a,mi
a | Freq. Percent Cum.
------------+-----------------------------------
0 | 67 90.54 90.54
1 | 2 2.70 93.24
. | 5 6.76 100.00
------------+-----------------------------------
Total | 74 100.00
Kit Baum, Boston College Economics
http://ideas.repec.org/e/pba1.html
*
* 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/