****
webuse nlswork, clear
bysort idcode (year):/*
*/ gen wave = _n
logit union age collgrad /*
*/ tenure hours if wave==1
predict pred1 if e(sample)
su wave, mean
forvalues i=2/`r(max)'{
logit union l.ln_wage l.age /*
*/ l.collgrad l.tenure l.hours if wave==`i'
predict pred`i' if e(sample)
}
egen predfinal = rowmax(pred*)
****
HTH
Martin
_______________
----- Original Message -----
From: "Marcello Pagano" <[email protected]>
To: <[email protected]>
Sent: Thursday, June 25, 2009 10:28 PM
Subject: st: Code erroring out because of "no observations"
From: Ariel Linden, DrPH [mailto:[email protected]] Sent: Wednesday,
June 24, 2009 2:40 PM
To: '[email protected]'
Subject: Code erroring out because of "no observations"
Hi All,
I am running some code in the nlswork file in which I use lagged values in
the present period’s logit model. Since there are individuals in the file
that don’t have more than one period (wave), the code errors with “no
observations.” As a result, the code cannot continue to the last line I
have below which generates a variable with the max of all the waves.
I tried using “capture” but the loop never ends.
I’d appreciate it if someone could tell me how to override the error and
continue on to the next line of code? (if my poor coding could be improved
as well, I’d appreciate that as well) ☺
Thanks in advance
Ariel
***** start of code**********
webuse nlswork, clear
sort idcode year
bysort idcode: egen wave = seq()
tsset idcode wave
logit union age collgrad tenure hours if wave==1
predict pred1 if e(sample)
forvalues i=2/`=_N' {
logit union l.ln_wage l.age l.collgrad l.tenure l.hours if wave==`i'
predict pred`i' if wave == `i'
}
egen predfinal = rowmax( pred*)
***** end of code*************
*
* 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/