maohu2212 发表于 2020-5-24 10:04 
你好,您可能没懂我的意思。那个num变量是我想要生生成的结果,而不是本来就有的。
在仅有month1的情况下:
gen num = .
gen n = _n
replace num= 1 if month1== "2000m4"
replace num= num[_n-6]+1 if mod(n,6) == 1 & month1!="2000m4"
replace num= num[_n-1] if mod(n,6) != 1
drop n
这样就可以生成符合条件的num了
建议楼主试一试~