Statalist


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

st: RE: nested forvalues loop


From   "Nick Cox" <[email protected]>
To   <[email protected]>
Subject   st: RE: nested forvalues loop
Date   Fri, 2 Oct 2009 18:29:32 +0100

There is some inconsistency here over whether you want to start at 13 or
14. 

Your -predict- command won't work. Second time around the inner loop,
ps`i' already exists. 

There might be some conservative ill-ease at the data-dredging involved
but that's a separate issue. 

Here's a guess at better code. 

forvalues j=1/10 {
	gen ps`j' = . 
	forvalues i=14/24 {
		capture logit  Y l(0/`j').X1 l(0/`j').X2 l(0/`j').X3
month if month==`i'
		if _rc == 0 { 
			tempvar work
			predict `work' 
			replace ps`j' = `work' if month == `i'
			drop `work'
		} 
	}
}		
	

Nick 
[email protected] 

Ariel Linden

I have a basic question about structuring this nested forvalues loop
(Stata
v10.1).

I have a panel data set and I want to focus on months 13 thru 24. In
each
loop I want to use the lagged values for all the prior months. So I have
`i'
which loops through the months 13 thru 24, and `j' that is intended to
increase the lag at each iteration.

For example month 14 should have 0/1 lag and month 24 should have 0/10
lags.

I would appreciate feedback as to if I wrote this correctly. 

forvalues i=14/24 {

	forvalues j=1/10 {

capture logit  Y l(0/`j').X1 l(0/`j').X2 l(0/`j').X3 month if month==`i'

predict ps`i' if month == `i'
}
}


*
*   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/



© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index