This is clearly the winner, as long as every record within each hhid is
sequentially numbered by lineno -- i.e., lineno==_n for all records within
each hhid, there are no gaps.
Michael Blasnik
[email protected]
----- Original Message -----
From: "Nick Cox" <[email protected]>
To: <[email protected]>
Sent: Wednesday, September 15, 2004 12:43 PM
Subject: st: RE: Re: How to speed up loop
> Looks like
>
> by hhid : gen mage = age[mlineno]
>
> to me. No loops, no -merge-.
>
> Nick
> [email protected]
>
> Friedrich Huebler
>
> > I appreciate the responses that I received so far but realize that my
> > initial message was not precise enough.
> >
> > The variable mlineno lists the line number of a household member's
> > mother. In household 1 in my example data, household member 2 is the
> > mother of household member 3. In household 2, 1 is the mother of 2,
> > and 3 is the mother of 4 and 5. I would like to create a variable
> > that lists the age of each household member's mother. The result
> > should look like this:
> >
> > hhid lineno age mlineno mage
> > 1 1 32 . .
> > 1 2 30 . .
> > 1 3 5 2 30
> > 2 1 68 . .
> > 2 2 41 1 68
> > 2 3 40 . .
> > 2 4 17 3 40
> > 2 5 14 3 40
> >
> > The loop that I am using to create the variable mage works perfectly
> > but it is very slow with a large number of observations.
> >
> > Friedrich
> >
*
* 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/