gen reg_obs = .
gen reg_r2 = .
gen res = .
local N = _N
forv i = 1/`N' {
local industry = industry[`i']
local assets = assets[`i']
capture { /* 同一行业内公司太少可能导致没有其它公司满足
条件0.8*`assets' <= assets & assets <= 1.2*`assets',
而这将导致regress、replace、predict等命令出错退出循环,
故加上capture
*/
regress roa boardind salesrev lev if _n != `i' & industry == `industry' & ///
0.8*`assets' <= assets & assets <= 1.2*`assets' // 包括所有满足条件的公司但不包括自身
replace reg_obs = e(N) in `i'
replace reg_r2 = e(r2_a) in `i'
predict r in `i', residuals
replace res = r in `i'
drop r
}
}
老师我也有搜索
只是我对程序中的内容有疑问
_n != `i'
这个是用来控制什么的呢
如果想要控制year
就类似加上year==`year'
对吧