数据清洗|数据填充(均值法)
在 Stata 中,使用 egen
等命令分组计算后,可以得到一个组内取值相同、组间取值不同的变量。如果在使用
egen
命令分组计算时,使用了 if
条件对特定样本进行计算,那么组内取值有且仅有两种情况:
- 情况一:两种取值,一是组内样本符合条件的取值相同,不符合条件的都是缺失值
.
。 - 情况二:一种取值,组内因不符合条件,都是缺失值。
在此种情况下,可以使用 ereplace
命令配合
mean
函数补充。
1. 命令展示
1 | ** 外部命令,首次使用需要安装 ereplace |
2. 结果展示
(⚠️注意:不同设备的显示字体不同,可能会出现字符错位的现象。将错位的文本复制到其他文本编辑器 / Stata do 文件编辑器中,可以解决此问题。)
1 | ** 计算条件分组取值 |
上面的三行命令中:
egen
和ereplace
命令可以使用的函数、用法都相同,具体使用方法参见文章《数据清洗|变量生成与替换》;ereplace
发挥的作用是,在情况一(取值只有两种情况,缺失值和非缺失值,且非缺失值取值相等)下,非缺失值的均值就是其取值本身,如果我们希望将组内的缺失值填充为这个相同的非缺失值,就可以使用第二行命令;- 在情况二下,即部分组内没有满足条件的值,或者都是缺失值,此时可以根据研究需要进行数据填补(此处补为0)。
3. 使用案例
转载请联系作者,并注明文章来源 https://fgzfgz.github.io
评论