温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。
作者:连玉君 (中山大学)
E-Mail: arlionn@163.com
目录
在 伍德里奇先生的问题:PSM 分析中的配对——小蝌蚪找妈妈 一文中,我们介绍了几种配对方法。今天,又遇到了一个有点相似但又不完全相同的问题。最终看来,处理方法却迥异。
我们手头有如下数据:
+----------------+
| year g0 y |
|----------------|
1. | 2016 0 10 |
|----------------|
2. | 2016 1 20 |
3. | 2016 1 30 |
4. | 2016 1 40 |
|----------------|
5. | 2017 0 50 |
6. | 2017 0 60 |
7. | 2017 0 70 |
|----------------|
8. | 2017 1 80 |
9. | 2017 1 90 |
+----------------+
想得到如下结果(即生成 ym 和 ym_peer 两个新变量):
+-------------------------------+
| year g0 y ym ym_peer |
|-------------------------------|
1. | 2016 0 10 10 30 |
|-------------------------------|
2. | 2016 1 20 30 10 |
3. | 2016 1 30 30 10 |
4. | 2016 1 40 30 10 |
|-------------------------------|
5. | 2017 0 50 60 85 |
6. | 2017 0 60 60 85 |
7. | 2017 0 70 60 85 |
|-------------------------------|
8. | 2017 1 80 85 60 |
9. | 2017 1 90 85 60 |
+-------------------------------+
我们需要完成的工作图示如下:
ym
变量:只需借助 egen
命令的 mean() 函数即可实现;ym_peer
稍微复杂一些,可以借助虚拟变量 (哑变量) 的 开关 功能,以及 egen
命令的 max() 函数实现数据的扩充。clear
input ///
year g0 y
2016 0 10
2016 1 20
2016 1 30
2016 1 40
2017 0 50
2017 0 60
2017 0 70
2017 1 80
2017 1 90
end
*- ym
bysort year g0: egen ym = mean(y)
*- ym_peer (一部分)
gen g1 = 1-g0
gen ymxg0 = ym*g0
bysort year: egen ymxg0full = max(ymxg0)
gen ymp0 = ymxg0full*(1-g0)
clear
input ///
year g0 y
2016 0 10
2016 1 20
2016 1 30
2016 1 40
2017 0 50
2017 0 60
2017 0 70
2017 1 80
2017 1 90
end
list year g0 y, sepby(year g0)
bysort year g0: egen ym = mean(y)
gen g1 = 1-g0
gen ymxg0 = ym*g0
bysort year: egen ymxg0full = max(ymxg0)
gen ymp0 = ymxg0full*(1-g0)
gen ymxg1 = ym*g1
bysort year: egen ymxg1full = max(ymxg1)
gen ymp1 = ymxg1full*(1-g1)
gen ym_peer = ymp0 + ymp1
keep y year g0 ym ym_peer
list, sepby(year g0) noobs
结果如下:
. list, sepby(year g0) noobs
+-------------------------------+
| year g0 y ym ym_peer |
|-------------------------------|
| 2016 0 10 10 30 |
|-------------------------------|
| 2016 1 20 30 10 |
| 2016 1 30 30 10 |
| 2016 1 40 30 10 |
|-------------------------------|
| 2017 0 50 60 85 |
| 2017 0 60 60 85 |
| 2017 0 70 60 85 |
|-------------------------------|
| 2017 1 80 85 60 |
| 2017 1 90 85 60 |
+-------------------------------+
连享会-直播课 上线了!
http://lianxh.duanshu.com
免费公开课:
直击面板数据模型 - 连玉君,时长:1小时40分钟 Stata 33 讲 - 连玉君, 每讲 15 分钟. 部分直播课 课程资料下载 (PPT,dofiles等)
支持回看,所有课程可以随时购买观看。
专题 | 嘉宾 | 直播/回看视频 |
---|---|---|
⭐ 最新专题 ⭐ | DSGE, 因果推断, 空间计量等 | |
⭕ Stata数据清洗 | 游万海 | 直播, 2 小时,已上线 |
研究设计 | 连玉君 | 我的特斯拉-实证研究设计,-幻灯片- |
面板模型 | 连玉君 | 动态面板模型,-幻灯片- |
面板模型 | 连玉君 | 直击面板数据模型 [免费公开课,2小时] |
Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。
关于我们
课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法
等
连享会小程序:扫一扫,看推文,看视频……
扫码加入连享会微信群,提问交流更方便
✏ 连享会学习群-常见问题解答汇总:
✨ https://gitee.com/arlionn/WD