# Re: st: recursive variable for many groups

 From Bjorn Persson <[email protected]> To [email protected] Subject Re: st: recursive variable for many groups Date Thu, 22 Sep 2005 12:29:06 -0400

```Thanks very much, Nick!

Best
Bjorn

1. Use -tsset- and exploit Stata's time-series operators.

tsset group time
gen x = y
replace x = constant * L.x

2. Use -if- not -in-.

gen x = y
bysort group (time): replace x = constant * x[_n-1] if _n > 2

Nick
[email protected]

I am trying to create a variable that depends on its lagged values, and

gen x = y in 1

replace x = constant*x[_n-1] in 2/l(ast)

I am now wondering how to to this for different groups. That is,

gen x(i) = y(i) in 1(i)

replace x(i) = constant*x(i)[_n-1] in 2(i)/l(i)

for groups i=1,2,3...

I have tried to sort the data using "by", but the "by" command does not
allow the "in" specification.

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