On Wed, 27 Nov 2002, Nick Winter wrote:
> > -----Original Message-----
> > > In SAS, the code exits the structure when a true condition
> > > is met. In
> > > Stata, every if condition is evaluated even after the true
> > > condition is
> > > met.
> >
> > Perhaps we are not talking about
> > the same thing here. I was assuming
> > that -x- and -y- are _variables_.
> >
>
> I took Richard's point to be that, *for each observation*, the
> evaluation of conditions only need take place until a true condition is
> found for *that observation*. So, in the Stata code, Stata will
> evaluate three conditions per observation; SAS will evaluate fewer than
> that, depending on which conditions apply to which cases.
Yes, that's what I meant. In my simple example, using the Stata
alternative isn't such a problem, but often I want to apply a subcondition
to only some values. So, e.g.,
if x=0 then y=1;
else if 1 < x < 10 then do;
<other sas commands>;
end;
else if 11 < x < 20 then do;
<other sas commands>;
end;
It's difficult and tedious to have to write the multiple levels of
conditions if the program is going to evaluate every if statement.
*
* 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/