Quoting Svend Juul <[email protected]>:
> Nikos wrote:
>
> I'm currently writing a program that in some point checks
> if more than observations have two vars (E and SE) equal.
> If more than one exists then SE is increased by 0.001:
>
> tempvar _id
> qui gen `_id'=0
> local _idN=2
> while `_idN'!=1 {
> bysort `E' `SE': replace `_id'=_n if `touse'
> count if `_id'>1 & `touse'
> replace `SE'=`SE'+(`_id'-1)*0.001 if `_id'>1
> sum `_id' if `touse', detail
> local _idN=r(max)
> list `E' `SE' `_id' if `touse'
> }
>
> when I run the above piece of code bysort fails in the second pass:
>
> 2
> (2 real changes made)
> ----------------------------------------------------
>
> I have no intent to try to understand the above commands. But
> to help yourself you might use the -trace- command. To restrict
> the amount of output you might also use -set tracedepth- :
>
> set tracedepth 1
> set trace on
> - and run the program
>
> This will let you se how your macros expand.
>
> Hope this helps
> Svend
>
> __________________________________________
>
> Svend Juul
> Institut for Folkesundhed, Afdeling for Epidemiologi
> (Institute of Public Health, Department of Epidemiology)
> Vennelyst Boulevard 6
> DK-8000 Aarhus C, Denmark
> Phone: +45 8942 6090
> Home: +45 8693 7796
> Email: [email protected]
> __________________________________________
>
> *
> * 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/
>
I did trace the code but the only thing showing is that bysort is not working
properly on the second pass.
*
* 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/