运行下列代码计算操纵性应计利润,出现invalid syntax错误,不知道怎么回事,请各位大牛指教,在线等,谢谢
xtset stkcd year
clonevar A  = 资产总额                 // 总资产
clonevar EBXI  = 营业利润                 // 营业利润
clonevar cfo = D10000                 // 经营活动现金流净额
gen acc = (EBXI - cfo)/L.A       // 总应计项目,y
gen invA  = 1/L.A                // 滞后一期的总资产的倒数, x1
gen Dsale = D.主营业务收入/L.A     // 营业收入的增量, x2
gen PPE = A001212000/L.A                 // 固定资产净额/总资产, x3
sort stkcd year
sum A EBXI cfo acc invA Dsale PPE
* 生成行业+年份变量,方便回归
egen sic_year = group(ind year), label lname(ind_year) // sic 为行业分类,year为年度时间标识
sum sic_year
* 利用循环求残差,残差即为应计盈余管理DACC
sum acc invA Dsale PPE
gen DACC1 = .
//N为sic_year的编码最大值
forvalues i = 1/N{
   //有时由于某行业内企业较少,不能进行单个回归,需要用cap即capture捕捉错误,跳过错误。
   qui reg acc invA Dsale PPE if (sic_year==`i'), nocons
   if(_rc==0){
        predict e if e(sample), res
        replace DACC1 = e if e(sample) 
   drop e
   }