[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> |

Subject |
RE: st: how do i increment a counter |

Date |
Wed, 31 Aug 2005 22:49:51 +0100 |

Meaning, gen age_category = cond(age <= 50, 1, cond(age <= 75, 2, cond(age <= 90, 3, 4))) tabstat exposure_time, s(sum) by(age_category) Nick n.j.cox@durham.ac.uk > -----Original Message----- > From: owner-statalist@hsphsun2.harvard.edu > [mailto:owner-statalist@hsphsun2.harvard.edu]On Behalf Of Nick Cox > Sent: 31 August 2005 22:33 > To: statalist@hsphsun2.harvard.edu > Subject: RE: st: how do i increment a counter > > > As others have advised, no loops are needed > for a problem like this. I guess at > > gen age_category = cond(age <= 50, 1, > cond(age <= 75, 2, > cond(age <= 90, 3, 4))) > > tabstat exposure_time, s(sum) by(exposure_time) > > Nick > n.j.cox@durham.ac.uk > > aine dooley > > > What I am actually trying to do is loop through a list of > > 6500 patients. > > Each patient has an exposure_time i.e. the period of time in > > days during > > which they are at risk for a fracture. For each age category > > (see below), I > > want to add up a cumulative time at risk. So for ages 51-75, > > I want to come > > out with a number that contains the total exposure_time for > > all patient in that age category. > > > > I think numlist apparently only allows 1600 observations > > which is somehow > > incremented by using numlist, max('totobs`) though I haven't > > figured out the > > syntax. > > > > I'm sure there is a more elegant way to do this, however ... > > > > local age1_sum=0 > > local age2_sum=0 > > local age3_sum=0 > > local age4_sum=0 > > local totobs = _N > > > > foreach obs of numlist 1/`totobs' { > > if age[`obs']<=50 { > > local age1_sum = `age1_sum' + exposure_time[`obs'] > > } > > else if age[`obs'] >50 & age[`obs'] <= 75 { > > local age2_sum = `age2_sum' + exposure_time[`obs'] > > } > > else if age[`obs'] >75 & age[`obs'] <= 90 { > > local age3_sum = `age3_sum' + exposure_time[`obs'] > > } > > else local age4_sum = `age4_sum' + exposure_time[`obs'] > > } > > > > > > * > * 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/ > * * 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/

- Prev by Date:
**Re: st: how do i increment a counter** - Next by Date:
**st: identifying letters in a string variable** - Previous by thread:
**RE: st: how do i increment a counter** - Next by thread:
**st: Calculating Prevalence** - Index(es):

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