[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

From |
Richard Williams <Richard.A.Williams.5@nd.edu> |

To |
rar <r.a.reese@Hull.ac.uk>, Stata distribution list <statalist@hsphsun2.harvard.edu> |

Subject |
Re: st: RE: Taking averages, etc. |

Date |
Wed, 17 Dec 2003 08:03:49 -0500 |

At 12:38 PM 12/17/2003 +0000, Allan Reese wrote:

I'm not sure how that performs fewer tests. The if-then-else structure only performs as many tests as are necessary whereas the above would perform 2 tests for each case. In any event, I think I'd be more likely to make errors with syntax like this. But that may just be me!First point is to analyse the logic. Reforming a problem often speeds up the execution far more than fancy coding, and leads to insights. In this case: gen y=5 replace y=3 if x1==1 & x2==3 replace y=4 if y==5 & (x3==2 & x4==17) performs far fewer tests. The parentheses do not affect the result but emphasise the logic.

You must get Nick's messages faster in the UK! I look forward to what he has to say. Thanks Allan.Stata, as Nick has already replied, has a completely general control language that includes if/then/else, for and while. Unlike SPSS, where only data transformations can be put into DO IF and LOOP constructions, Stata allows any statements or blocks of statements. These may conveniently be written using an editor (provided it doesn't add a file extension!) and saved as .DO or .ADO on the fly.

-------------------------------------------

Richard Williams, Associate Professor

OFFICE: (574)631-6668, (574)631-6463

FAX: (574)288-4373

HOME: (574)289-5227

EMAIL: Richard.A.Williams.5@ND.Edu

WWW (personal): http://www.nd.edu/~rwilliam

WWW (department): http://www.nd.edu/~soc

*

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

**Follow-Ups**:**RE: st: RE: Taking averages, etc.***From:*"Nick Cox" <n.j.cox@durham.ac.uk>

**References**:**Re: st: RE: Taking averages, etc.***From:*Richard Williams <Richard.A.Williams.5@nd.edu>

**Re: st: RE: Taking averages, etc.***From:*Allan Reese <R.A.Reese@hull.ac.uk>

- Prev by Date:
**st: no more variable and command window after 'update 15 Dec 2003'** - Next by Date:
**st: RE: Efficiency: was RE: Taking averages, etc.** - Previous by thread:
**Re: st: RE: Taking averages, etc.** - Next by thread:
**RE: st: RE: Taking averages, etc.** - Index(es):

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