使用Stata的egen命令按年度和州计算获奖者占比的合理性咨询
你的Stata代码完全可行
核心逻辑说明
你的思路精准匹配需求:
- 二元变量
award_winner的均值就是该组内获奖者的占比(均值=获奖企业数/组内总企业数),用egen mean()计算完全能得到你要的「每年各州获奖者占比」。 by state year_dummy*的分组方式,能准确按「州+年度」划分样本,生成对应组内的占比变量。
代码简化与验证技巧
- 简化代码:
bysort可以替代单独的sort命令,合并后更简洁:bysort state year_dummy*: egen winner_bystate_year = mean(award_winner) - 小样本快速验证:不用全量手动检查,抽局部样本验证即可:
- 提取某州某一年的子样本:
keep if state=="XX" & year_dummy_2020==1(替换为你的实际变量值) - 手动算占比:用
count if award_winner==1和count分别得到获奖数和总企业数,计算比值 - 用
summarize winner_bystate_year查看该子样本的变量均值,和手动计算结果对比是否一致
- 提取某州某一年的子样本:
- 批量交叉验证:用
tabstat命令按分组统计,和egen生成的结果交叉核对:
输出的均值会和tabstat award_winner, by(state year_dummy*) stats(mean)winner_bystate_year的组内值完全匹配。
内容的提问来源于stack exchange,提问作者econ_grad12345
相关产品推荐
相关产品推荐

