ritaing 发表于 2020-4-19 16:46 
你的前两行数据就会出现不稳定的结果
我又根据文献修改了一下我的代码。但是有些步骤依然需要用bysort生成变量。。是不是不能用bysort去生成啊?比如下面这个循环,是不是问题就出在bysort上呢,您提到的那两个只是我用来看数据特征的其实可有可无,我删除之后根据文献又修改了一下代码依然会变?以及您这样在页面中打出的代码是怎么实现的呀
foreach x of varlist Structure_power Hmanage_holding STK_SEP MANAGERS_N tenure DEGREE_CEO BOARD internal_rate {
bysort YEAR:egen max_`x' = max(`x')
bysort YEAR:egen min_`x' = min(`x')
gen Norm_`x' = (`x' - min_`x')/ ( max_`x' - min_`x')
drop max_`x' min_`x'
bysort YEAR:egen sum_Norm_`x' = sum(Norm_`x')
gen y_`x' = Norm_`x' / sum_Norm_`x'
// 保留
drop Norm_`x' sum_Norm_`x'
bysort YEAR:gen T_`x' = sum( y_`x' * ln( y_`x'))
bysort YEAR:gen e_`x' = -ln(_N) * T_`x'
gen g_`x' = 1 -e_`x'
drop e_`x' T_`x'
}