Stata:gen 和 egen 中的 sum() 函数异同

发布时间:2020-06-13 阅读 136

作者:连玉君 ( lianxh.cn )

Stata连享会   主页 || 视频 || 推文

连享会 - Stata 暑期班

线上直播 9 天:2020.7.28-8.7
主讲嘉宾:连玉君 (中山大学) | 江艇 (中国人民大学)
课程主页https://gitee.com/arlionn/PX | 微信版


目录


1. 此求和非彼求和

实证分析中,经常需要进行加总计算。Stata 中的 generate 命令以及更为强大的 egen 命令都提供了 sum() 函数。然而,需要特别注意的是,二者的功能有很大的差异。先看看如下范例:

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
clearinput x      1      2      3      4end
gen sx_gen = sum(x)egen sx_egen = sum(x)
list , clean noobs

结果如下:

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
. list , clean noobs    x   sx_gen   sx_egen      1        1        10      2        3        10      3        6        10      4       10        10  

可见,gen 提供的 sum() 函数执行的是「累积加总」,而 egen 提供的 sum() 函数则进行「整体加总」。

2. 扩展应用:分组求和

计算各个年度的销售总额 (sx_egen),以及每家公司当年的市场份额 (sale_per):

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
clearinput id     year    sale        601    2011    0.1      602    2011    0.2      601    2012    0.3      602    2012    0.4	  603    2012    0.5end
bysort year: gen sx_gen = sum(sale)bysort year: egen sx_egen = sum(sale)
gen sale_per = sale/sx_egen*100 //市场份额
format sx* sale* %3.1flist, noobs sepby(year)

结果如下:

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
. list, noobs sepby(year)
+-------------------------------------------------+ | id year sale sx_gen sx_egen sale_per | |-------------------------------------------------| | 601 2011 0.1 0.1 0.3 33.3 | | 602 2011 0.2 0.3 0.3 66.7 | |-------------------------------------------------| | 601 2012 0.3 0.3 1.2 25.0 | | 602 2012 0.4 0.7 1.2 33.3 | | 603 2012 0.5 1.2 1.2 41.7 | +-------------------------------------------------+

用法1:求取赫芬达尔指数

基于上述 egen 命令的 sum() 函数运算方法,很容易求取用于衡量行业集中度的指标 ——「赫芬达尔指数 HHI」。若不想自己写命令,也可以直接使用我此前编写的外部命令 hhi5,只需在 Stata 命令窗口中执行如下命令即可安装:

  • ounter(line
ssc install hhi5, replace

用法也很简单:

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
. sysuse nlsw88,clear. gen sale = ln(wage). hhi5 sale, by(industry). hhi5 sale hour, by(industry race) prefix(hhi5) top(5) minobs(10). br industry race hhi*

用法 2:计算累计超额回报率

前文已经提及,generate 提供的 sum() 函数为「累计求和」。一个典型的应用便是在「事件研究法」中求取股票的 累积超额回报率

有关事件研究法的详细介绍,参见连享会此前的热门推文「Stata:短期事件研究法一文读懂」(也可以查看 「微信版」)

3. 扩展阅读

如下命令也提供了能够满足更高阶需求的求和函数,有兴趣的读者可以自行挖掘,我们也会在后续的推文中就此专题进行详细分析。

  • help egenms // egen function to create a moving sum.
  • help egenmore 命令的 rsum() 函数
  • help egenmore 命令的 sumoth(exp) 函数
  • help tscollap //to compact timeseries into dataset of means, sums, end-of-period values

相关课程

连享会-直播课 上线了!
http://lianxh.duanshu.com

免费公开课:


课程一览

支持回看,所有课程可以随时购买观看。

专题 嘉宾 直播/回看视频
Stata暑期班 连玉君
江艇
线上直播 9 天
2020.7.28-8.7
效率分析-专题 连玉君
鲁晓东
张 宁
视频-TFP-SFA-DEA
已上线,3天
文本分析/爬虫 游万海
司继春
视频-文本分析与爬虫
已上线,4天
空间计量系列 范巧 空间全局模型, 空间权重矩阵
空间动态面板, 空间DID
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
直击面板数据模型 [免费公开课,2小时]

Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。


关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。直播间 有很多视频课程,可以随时观看。
  • 连享会-主页知乎专栏,300+ 推文,实证分析不再抓狂。
  • 公众号推文分类: 计量专题 | 分类推文 | 资源工具。推文分成 内生性 | 空间计量 | 时序面板 | 结果输出 | 交乘调节 五类,主流方法介绍一目了然:DID, RDD, IV, GMM, FE, Probit 等。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:
    • 课程, 直播, 视频, 客服, 模型设定, 研究设计, 暑期班
    • stata, plus,Profile, 手册, SJ, 外部命令, profile, mata, 绘图, 编程, 数据, 可视化
    • DID,RDD, PSM,IV,DID, DDD, 合成控制法,内生性, 事件研究, 交乘, 平方项, 缺失值, 离群值, 缩尾, R2, 乱码, 结果
    • Probit, Logit, tobit, MLE, GMM, DEA, Bootstrap, bs, MC, TFP, 面板, 直击面板数据, 动态面板, VAR, 生存分析, 分位数
    • 空间, 空间计量, 连老师, 直播, 爬虫, 文本, 正则, python
    • Markdown, Markdown幻灯片, marp, 工具, 软件, Sai2, gInk, Annotator, 手写批注, 盈余管理, 特斯拉, 甲壳虫, 论文重现, 易懂教程, 码云, 教程, 知乎

连享会主页  lianxh.cn
连享会主页 lianxh.cn

连享会小程序:扫一扫,看推文,看视频……


扫码加入连享会微信群,提问交流更方便

✏ 连享会学习群-常见问题解答汇总:
https://gitee.com/arlionn/WD