我正在尝试在 Stata 中创建一个循环,以将一系列操作(包括合并、替换缺失值、替换日期变量、排序和保存)应用于 3 个不同的 dta 文件(menin.dta、Bmenin.dta 和非Bmenin.dta)。下面我复制了如何在没有循环的情况下完成这些任务,但为了简化它,我想弄清楚如何循环这段代码。
use "C:\Users\Desktop\menin.dta",clear
merge 1:1 bene_id using Controls,nogenerate
replace menin= 0 if menin ==.
replace date= refdate if menin ==0
sort bene_id
save "C:\Users\Desktop\menin2.dta",replace
use "C:\Users\Desktop\Bmenin.dta",clear
merge 1:1 bene_id using Controls,nogenerate
replace Bmenin= 0 if Bmenin ==.
replace date= refdate if Bmenin ==0
sort bene_id
save "C:\Users\Desktop\Bmenin2.dta",replace
use "C:\Users\Desktop\nonBmenin.dta",clear
merge 1:1 bene_id using Controls,nogenerate
replace nonBmenin= 0 if nonBmenin ==.
replace date= refdate if nonBmenin ==0
sort bene_id
save "C:\Users\Desktop\nonBmenin2.dta", replace