# Stata：配对对象的均值-(俄罗斯方块移动)

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

E-Mail: arlionn@163.com

## 1. 问题背景

``````     +----------------+
| 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 |
+----------------+
``````

``````     +-------------------------------+
| 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 |
+-------------------------------+
``````

### 2. 处理思路

• `ym` 变量：只需借助 `egen` 命令的 mean() 函数即可实现；
• `ym_peer` 稍微复杂一些，可以借助虚拟变量 (哑变量) 的 开关 功能，以及 `egen` 命令的 max() 函数实现数据的扩充。

### 3. 代码及思路展示

``````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)
``````

### 4. 完整代码

``````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

### 课程一览

Stata数据清洗 游万海 直播, 2 小时，已上线

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

#### 关于我们

• Stata连享会 由中山大学连玉君老师团队创办，定期分享实证分析经验。直播间 有很多视频课程，可以随时观看。
• 连享会-主页知乎专栏，300+ 推文，实证分析不再抓狂。
• 公众号推文分类： 计量专题 | 分类推文 | 资源工具。推文分成 内生性 | 空间计量 | 时序面板 | 结果输出 | 交乘调节 五类，主流方法介绍一目了然：DID, RDD, IV, GMM, FE, Probit 等。
• 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标，输入简要关键词，以便快速呈现历史推文，获取工具软件和数据下载。常见关键词：`课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法`

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

06/02 专题课程 1743
06/02 专题课程 1500
12/05 计量专题 22934
10/10 专题课程 24926
07/24 回归分析 48