Blinder-Oaxaca分解 stata代码
时间: 2024-11-17 07:29:32 浏览: 5
oaxaca_oaxaca_oaxaca分解stata_
5星 · 资源好评率100%
Blinder-Oaxaca分解是一种经济学统计分析方法,用于探究工资差距中性别歧视的部分和非歧视部分,通常在研究中用于确定哪些因素造成了工资差异。Stata是一款流行的统计软件,提供了一系列内置函数和命令来执行此类分解。
在Stata中,你可以使用`regress`命令进行线性回归,并结合`by`子句对数据集进行分组处理,然后利用` margins` 和 `hettest` 或 `forvalues` 循环来进行Blinder-Oaxaca分解。以下是基本步骤:
1. **加载数据并运行基础回归**:
```
use your_data.dta
reg wage gender education years_of_experience
```
这里假设`wage`是工资变量,`gender`是性别变量,其他变量代表教育程度和工作年限。
2. **Blinder-Oaxaca分解**:
- 计算男性和女性的平均值:
```
by gender, egen(mean_wage = mean(wage), mean_other_factors = rowmean(education years_of_experience))
```
- 创建虚拟变量表示性别差异:
```
gen female_diff = (gender == "female")*1
```
- 对每个组分别运行回归并计算残差:
```
foreach i in mean_wage mean_other_factors {
quietly regress wage i' if gender == "male"
local male_coef = e(b)
quietly regress wage i' if gender == "female"
local female_coef = e(b)
// 接下来可以计算性别效应和结构效应
}
```
3. **性别效应(Selection Effect)**:
- 性别效应等于男性和女性回归系数之差:
```
gen selection_effect = male_coef - 结构效应(Efficiency Wage)则需要手动计算:
4. **异方差检验**:
```
hettest resid_regress_wage, by(gender) robust
```
记得根据实际数据调整上述代码。
阅读全文