In two cases here a``i'' should be a_``i''
Nick
[email protected]
> -----Original Message-----
> From: Nick Cox
> Sent: 07 June 2004 11:30
> To: '[email protected]'
> Subject: RE: Re[3]: st: Problem with foreach loops
>
>
> I think you just have your source and target confused.
>
> local i=1
> foreach v in ajbmspay ajbmssec ajbmswrk ajbmshrs ajbmsflx ajbmsall {
> local n : word `i' of pay security work hours flexibility overall
> recode `v' (-4 -3 -1 =.), gen(a_`n')
> la var a_`n' "Satisfaction with `n'"
> local i=`i'+1
> }
>
> Note that this is just one answer.
>
> If you know -tokenize-, you can
>
> tokenize pay security work hours flexibility overall
> local i=1
> foreach v in ajbmspay ajbmssec ajbmswrk ajbmshrs ajbmsflx ajbmsall {
> recode `v' (-4 -3 -1 =.), gen(a_``i'')
> la var a``i'' "Satisfaction with ``i''"
> local i=`i'+1
> }
>
> and the incrementation can also be done this way
>
> tokenize pay security work hours flexibility overall
> local i=1
> foreach v in ajbmspay ajbmssec ajbmswrk ajbmshrs ajbmsflx ajbmsall {
> recode `v' (-4 -3 -1 =.), gen(a_``i'')
> la var a``i'' "Satisfaction with ``i++''"
> }
>
> In this instance, I think this last version
> is not as clear as the previous one.
>
> Nick
> [email protected]
>
> Ian Watson
>
> > As a follow up to my last email, I've found the answer to
> this problem
> > using -foreach-. Courtesy of Nick Cox's article in State
> Journal 3(2)
> > 2003, the trick is to step through a non-numerical list using "word
> > [num] of".
> >
> > Here is the code that works:
> >
> >
> > local i=1
> > foreach v in ajbmspay ajbmssec ajbmswrk ajbmshrs ajbmsflx ajbmsall {
> > local n : word `i' of pay security work hours flexibility overall
> > recode `v' (-4 -3 -1 =.), gen(a_`n')
> > la var `v' "Satisfaction with `n'"
> > local i=`i'+1
> > }
> >
> >
> > There remains, however, still one bug. The label variables
> command is
> > not being executed, and the recode command's own variable
> > label remains
> > attached to the new variables. Does anyone have any thoughts?
>
*
* 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/