我猜楼主的意思是想计算每家企业从2000至2003年最大值-最小值,而非所有企业的最大值-所有企业的最小值,所以,楼上的计算方法只能得到后者,可能并非楼主想要的。基于此,我提出命令应如下:
bys qiye:egen maxv=max(value)
bys qiye:egen minv=min(value)
gen diff=maxv-minv
这样就得到的是每家企业从2000至2003年最大值-最小值。
但以上是假定你数据里面year只有从2000-2003年的。
但如果你还有<2000, or >2003,的数据,则需要加一个if 限制条件,这样才能只计算从2000至2003年最大值-最小值。命令如下:
bys qiye:egen maxv=max(value) if year>=2000 & year<=2003
bys qiye:egen minv=min(value) if year>=2000 & year<=2003
gen diff=maxv-minv
这样,其他年份的则自动为missing, 也就是.