This has the solution I gave previously. Do try it.
Nick
n.j.cox@durham.ac.uk
mzhang@nd.edu
> Sorry I did not state my question well. there are different
> racial groups in my
> sample. What i want to do is to give each racial group a
> sequential number.
> for example, I have 17 whites, 5 blacks and 7 others. then
> the value of the
> sequential variable I created would be: 1 2 3....17 for
> whites; 1 2 ...5 for
> blacks;
> 1 2 ....7 for others. what I was originally thinking is:
>
> gen sequence=1
> replace sequcence=sequence+1 if l.race==race
>
> However, this does not work out as I thought.
Nick Cox
> > I am not aware of a lag function, i.e. -lag()-, in Stata. There is
> > a lag operator L. but that is not appropriate for your purpose.
> >
> > You may be in search of
> >
> > bysort race : gen id = _n
> >
> > or
> >
> > bysort race : egen id = seq()
> >
> > although note that the labelling produced is essentially arbitrary
> > in either case.
mzhang@nd.edu
> > > for example, there are 17 people who have the same ethnicity.
> > > If I want to give
> > > them a sequential number 1 2 3..........17, how can I use lag
> > > function to do this?
*
* 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/