Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

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

From |
Nick Cox <n.j.cox@durham.ac.uk> |

To |
"'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu> |

Subject |
RE: st: RE: Comparing variables by observation |

Date |
Tue, 21 Sep 2010 20:18:00 +0100 |

(1) and (2) are not legal variable names. -by obscode- will do no harm, but will make no difference to the outcome as -obscode- does not feature on the right-hand side. As pointed out very recently, cond(5>= X1 & X1>= X2 & X2>=X3 & X3>=4, 1, 0) is just the same in result as 5>= X1 & X1>= X2 & X2>=X3 & X3>=4 I'd check for missings on your Xs. [_n] is unnecessary in the last command. Nick n.j.cox@durham.ac.uk Anisa Shyti I tried the following codes: by obscode, sort: gen (1) = cond(5>= X1 & X1>= X2 & X2>=X3 & X3>=4, 1, 0) by obscode, sort: gen (2) = cond(X1<=3 & 5<= X3, 1, 0) I also tried: gen byte cond2 = X5t[_n] <=3 & X7t[_n] >=5 Is this approach correct? I will try what you both suggest. Otherwise, I'll have to look for a logical problem.. On Tue, Sep 21, 2010 at 8:57 PM, Nick Cox <n.j.cox@durham.ac.uk> wrote: > No code of yours allows no comment on that. > > Responding to the algebra given, this kind of problem is one in which Stata's syntax is inescapably long-winded. To save checking on precedence rules I tend to parenthesise aggressively: > > (5 >= X1) & (X1 >= X2) & (X2 >= X3) & (X3 >= 4) > > (X1 <= 3) & (5 <= X3) > > What you wrote is not illegal but it will be interpreted in terms of 1s and 0s as explained at length in > > http://www.stata.com/support/faqs/data/trueorfalse.html > > which will usually yield something quite different from what you want. > > Nick > n.j.cox@durham.ac.uk > > Anisa Shyti > > I have three variables X1 X2 X3 > (taking values from 1 to 10) and I need to compare their values, by > observation, according to several conditions (which are theoretically > derived) of the form, examples: (1) 5>= X1 >=X2 >=X3 >=4; (2) X1<=3 > and 5<= X3. I need to evaluate each condition on the data by counting > the number of times it is met, in order to classify the observations. > > I tried several approaches, but the total number of classified > observations exceeds the total number of observations. So, I am > guessing I have some redundant counts - maybe I am doing something > wrong with the coding (given that the conditions are correct). * * 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/

**References**:**st: Comparing variables by observation***From:*Anisa Shyti <anisa.shyti@gmail.com>

**st: RE: Comparing variables by observation***From:*Nick Cox <n.j.cox@durham.ac.uk>

**Re: st: RE: Comparing variables by observation***From:*Anisa Shyti <anisa.shyti@gmail.com>

- Prev by Date:
**Re: st: generating matched set ID's after PSMATCH2** - Next by Date:
**RE: st: RE: Comparing variables by observation** - Previous by thread:
**Re: st: RE: Comparing variables by observation** - Next by thread:
**RE: st: RE: Comparing variables by observation** - Index(es):