楼主: 2019绛涞
3810 4

[数据管理求助] 求助如何算前五年滚动的标准差(环境不确定性) [推广有奖]

  • 14关注
  • 1粉丝

已卖:17份资源

硕士生

53%

还不是VIP/贵宾

-

威望
0
论坛币
520 个
通用积分
9.0251
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
5756 点
帖子
38
精华
0
在线时间
309 小时
注册时间
2020-1-6
最后登录
2023-12-17

楼主
2019绛涞 发表于 2020-1-13 23:22:16 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

数据如下所示

  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input long stkcd int year double sale
  4. 2 2007  35526611301.94
  5. 2 2008  40991779214.96
  6. 2 2009  48881013143.49
  7. 2 2010  50713851442.63
  8. 2 2011  71782749800.68
  9. 2 2012 103116245136.42
  10. 2 2013 135418791080.35
  11. 2 2014 146388004498.44
  12. 2 2015  195549130020.9
  13. 2 2016 240477236923.34
  14. 2 2017 242897110250.52
  15. 2 2018 297679331103.19
  16. end
复制代码



目前需要按照申慧慧老师的环境不确定性的表征方法,数据处理要求是:


1578928810(1).png


其中,Sales 为企业的销售收入,Year为年份,从计算当年开始倒退四年,分别赋值为 5-1。例如:计算2017 年的环境不确定性,要以 2007-2011 年这五年的销售收入作为原始数据,将 2011 年赋值为 5,2010年赋值为 4,2009 年赋值为3,2008年赋值为 2,2007 年赋值为 1。同理,计算 2012 年的环境不确定性,要以 2008-2012年的销售收入为基础,以此类推。由该模型计算得出的残差项,即为企业的非正常销售收入。将该残差的标准差除以过去五年销售收入的平均值,即为初始的环境不确定性。由于不同行业受外界环境因素的影响程度不同,本文再将初始的环境不确定性除以同一行业的中位数,得到最终求出的经过行业调整的环境不确定性 EU。为了进一步验证本文提出的假设,增添了对环境不确定性新的衡量方式,根据行业中位数进行调整,将环境不确定性 EU 高于行业中位数的赋值为 1,否则为 0,最终得到环境不确定性高低 EUhigh 哑变量。
我参考之前的关于环境不确定性的发帖,某个回帖给的命令如下:

gen msale=.
gen dev=.
forvalues i = 2006(1)2011{
          forvalues j = 1(1)2{
                  gen YEAR= year-`i'
                  qui reg sale YEAR if YEAR <6 &YEAR>0 & stkcd ==`j'
                  qui predict p if YEAR<6 & YEAR>0& stkcd ==`j',r
                  
                  qui sum p if stkcd==`j',de
                  qui dis "i=`i' j=`j'"
                  qui replace dev=r(sd) if stkcd==`j' & YEAR==5
                  qui sum sale if stkcd==`j' & YEAR<6 & YEAR>0 ,de
          qui replace  msale=r(mean) if stkcd==`j' & YEAR==5
                  
                  drop YEAR p  
        
                  }
}
dis "loop is over"
gen eu=dev/msale


但是我在执行倒数第三步的时候,stata显示“no observations r(2000);”
目前,我想请教各位大佬,上述命令是否正确,如果正确,为何没办法完全执行,望不吝赐教(我的这个问题貌似有点复杂,但我有在尽量简单解释,若我表达有问题,望告知,感恩)










二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


沙发
sooy 发表于 2020-7-14 12:48:25
您好,请问问题解决了吗,我也遇到了这个问题

藤椅
sooy 发表于 2020-7-14 12:49:19
可以直接用滚动回归吗?

板凳
2019绛涞 发表于 2020-7-14 16:21:18
sooy 发表于 2020-7-14 12:49
可以直接用滚动回归吗?
您好,可以借鉴这个帖子https://bbs.pinggu.org/thread-6096724-1-1.html,楼主做的命令非常好,你可以参考下,但愿帮到你

报纸
黃河泉 在职认证  发表于 2020-7-15 07:45:26
sooy 发表于 2020-7-14 12:48
您好,请问问题解决了吗,我也遇到了这个问题
请参考 https://bbs.pinggu.org/thread-9091229-1-1.html

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-8 05:03