I generate lagged variable for t-1 to t-20 by using the following code:
forvalues i = 1/20 {
by fips (year), sort: gen Damage`i' = L`i'.Damage
replace Damage`i' = 0 if Damage`i' == .
}
Now I want to get the average Damage for the past 3, 6 and 10 years respectively.
by fips (year), sort: egen Damage_13 = mean(Damage1 Damage2 Damage3)
by fips (year), sort: egen Damage_49 = mean(Damage4 Damage5 Damage6 Damage7 Damage8 Damage9)
by fips (year), sort: egen Damage_1020 = mean(Damage10 Damage11 Damage12 Damage13 Damage14 Damage15 Damage16 Damage17 Damage18 Damage19 Damage20)
But the above code does not work. Ideally, I want
Damage13 = (Damage_t-1 + Damage_t-2 + Damage_t-3)/3
forvalues i = 1/20 {
by fips (year), sort: gen Damage`i' = L`i'.Damage
replace Damage`i' = 0 if Damage`i' == .
}
Now I want to get the average Damage for the past 3, 6 and 10 years respectively.
by fips (year), sort: egen Damage_13 = mean(Damage1 Damage2 Damage3)
by fips (year), sort: egen Damage_49 = mean(Damage4 Damage5 Damage6 Damage7 Damage8 Damage9)
by fips (year), sort: egen Damage_1020 = mean(Damage10 Damage11 Damage12 Damage13 Damage14 Damage15 Damage16 Damage17 Damage18 Damage19 Damage20)
But the above code does not work. Ideally, I want
Damage13 = (Damage_t-1 + Damage_t-2 + Damage_t-3)/3
Comment