Stata系列-如何处理极端数据
什么是“极端数据”呢?
如果样本数据中的少数观测值离大多数观测值很远,这些数据称为“极端观测值”或“高影响力数据”。这些数据会对OLS回归系数产生很大的影响。
初始*导入数据集
use nerlove.dta, clear
*回归分析
reg lntc lnq lnpl lnpk lnpf
对比*手动制造极端值
replace lnq = lnq * 100 if _n == 1
*回归分析
reg lntc lnq lnpl lnpk lnpf
从以上两张表可以对比得出,R2 从0.926下降到0.0256,这些仅仅是因为在145个观测值中有一个发生了变化,这正体现了“高影响力数据”里的“高影响力”含义。
剔除极端值*剔除极端值
reg lntc lnq lnpl lnpk lnpf if _n > 1
从上表中可以得知,回归又回归正常~
呢么如何发现极端值呢?
这里分为两种情况:
- 一元回归,使用散点图即可
- 多元回归,引入“杠杆作用”
从前面分析中,某个观测值的影响力可以通过去掉此观测值对回归系数的影响来衡量。
1 2 3lev*导入数据集
use nerlove.dta, clear
*回归分析
qui reg lntc lnq lnpl lnpk lnpf
*计算lev
predict lev, lev
*查看lev信息
sum lev
lev*lev最值与均值关系
dis r(max)/r(mean)
*将lev降序排列
gsort -lev
*查看lev排前3数值
list lev in 1/3
lev1*制造极端值
replace lnq = lnq * 100 if _n == 1
*回归分析
qui reg lntc lnq lnpl lnpk lnpf
*计算lev1
predict lev1, lev
*查看lev1信息
sum lev1
lev1*lev1最值与均值关系
dis r(max)/r(mean)
Lev最大值是其平均值的28.42倍,故存在高影响力的极端观测值
遇到极端值后如何处理呢?
- 仔细检查是否是数据输入有误
- 对出现的极端观测值进行分析,看是否是由于与研究课题无关的特殊现象导致,必要时可以删除极端数据
参考资料:《计量经济学及Stata应用》 陈强