Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Nick Cox <n.j.cox@durham.ac.uk> |
To | "'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu> |
Subject | RE: st: foreach command |
Date | Tue, 22 May 2012 18:19:15 +0100 |
Ronan's really answered his own question. As you can insert all kinds of stuff inside the loop, the looping command doesn't need an option to decorate each iteration of output. You can just provide your own decoration in exactly the way you want. In fact, there is a second kind of answer, or so I guess. In providing -foreach- and -forvalues- StataCorp were providing fairly standard kinds of looping commands recognisable to programmers with backgrounds in many kinds of languages, and there was no need to make them too quirky or add all kinds of extra syntax as icing on the cake. Nick n.j.cox@durham.ac.uk -----Original Message----- From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Ronan Conroy Sent: 22 May 2012 18:00 To: statalist@hsphsun2.harvard.edu Subject: Re: st: foreach command On 2012 Beal 22, at 17:13, Caliph Omar Moumin wrote: > I wanted to regress a data with many categories so i used this command > by subchapter2, sort: xtreg cost duration sex agegroup group, re robust > > the problem is this command does not accept xi: command to change the var 'agegroup' into dummy variable > > then i try to use foreach command, and i appplied it like this > foreach subchapter2_value in 1 2 3 4 5 6 7 8 9 10 11 { > xi: xtreg cost duration sex i.agegroup group if subchapter2== `subchapter2_value', re robust > } > > > Now the problem is i cannot see the label name in the later case This is a nuisance. The solution I adopt is foreach subchapter2_value in 1 2 3 4 5 6 7 8 9 10 11 { di "*================================================*" di "* Results for Subchapter `subchapter2_value' * di "*================================================*" di di xi: xtreg cost duration sex i.agegroup group if subchapter2== `subchapter2_value', re robust } This prints an old-fashioned ASCII banner in the output. However, I miss the option to echo the command during execution, as happened with the now-deprecated -for- Ronán Conroy rconroy@rcsi.ie Associate Professor Division of Population Health Sciences Royal College of Surgeons in Ireland Beaux Lane House Dublin 2 * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/ * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/