Hi all,
I'm creating my own moving average code since I only want the top four of the previous seven years average for my variable max_yield. I'm getting the error in the forvalues loop. I included the rest in case it can help provide context.
Thanks in advance.
sort nrate_year // sort the data by year before running "by nrate_year"
by nrate_year, sort: egen max_yield = max(cornyieldbuac)
egen j = seq(), f(1) t(47) //generates repeating sequence to isolate each year's max yield
xtset j nrate_year
sort j max_yield
forvalues y = 2016/2020 {
// generate a variable that is equal to 1 for the years that are within the previous seven years of the current year
gen in_range = (nrate_year >= `y'-7 & nrate_year <= `y'-1)
// tag the top four observations in each group
by j: egen top_four = tag(max_yield, tag(1 2 3 4) group)
// generate the moving average of the best four years for the current year
by j: egen ma = mean(max_yield) if nrate_year == `y' & top_four == 1
// drop the intermediate variables
drop in_range top_four
}
Related Posts with Moving average invalid syntax
Stratified sample using one stratum.Hi! I am doing a study about schools in different municipalities and are trying to do a stratified s…
Generating mean variable by subgroupDear all, Im currently working with a panel datatset covering automation risk on occupational- and …
Nesting foreach loops to check and print variablesHello, Statalist. I have browsed these forums for a while now and have solved many of my issues by d…
Invalid Coordinates Using shp2dtaHello, I am trying to match latitude and longitude coordinates from a survey with their associated …
mnPS command to use twang with stata for multiple treatmentsI'd like to estimate propensity scores for multiple treatments and try to use the mnps command in St…
Subscribe to:
Post Comments (Atom)
0 Response to Moving average invalid syntax
Post a Comment