You are correct. In principle, I posted lousy code.
When Stata does something -if-, then every observation
is tested. In a really big dataset this could
take a while.
On the other hand, doing something -in- will
often need a prior -sort-, and the tradeoff
can be subtle.
With 4000 observations, the difference is
going to be trivial.
Nick
n.j.cox@durham.ac.uk
Suzy
> Thanks Nick - I neglected to state that have over 600
> observations with
> all different positive values (as well as negative values and missing
> values) within the subgroup of total observations of the variable, so
> this code could be somewhat inefficient. Also, it is difficult to
> specify which observations, for example, by id - thus the next best
> thing in this instance seems to be to sort by their common
> characteristic - which is captured by another variable.
>
> Nick Cox wrote:
>
> >replace suzy = -suzy if suzy > 0 & <whatever>
> >
> >So if suzy is positive, it is negated. The
> >crunch is specifying the extra condition <whatever>
> >that catches just the observations desired.
> >
> >Sorting is a red herring here. So long as you
> >can specify which observations you want, sort order
> >is immaterial.
> >
> >Nick
> >n.j.cox@durham.ac.uk
> >
> >Suzy
> >
> >
> >
> >>I have a continuous variable with positive, negative, and
> zero values
> >>and also missing values(.).
> >>I would like to know if anyone has an easy Stata code/command
> >>to change
> >>just the positive values to a negative (change the sign: 4.4567 to
> >>-4.4567) for just a particular subgroup of the total (n=661
> >>out of over
> >>N=4,000). Within this subgroup (which I can sort, but not by
> >>id) there
> >>already are a few appropriately negative values in place.
*
* 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/