专栏名称: R语言实战
它太神奇了,满载珍宝,可以让那些聪明狡猾和粗野胆大的人得到充分满足,但不适合胆小者。 ————《星际迷航.下一代》
目录
相关文章推荐
51好读  ›  专栏  ›  R语言实战

R语言-异常观测值

R语言实战  · 公众号  ·  · 2017-06-29 12:19

正文

请到「今天看啥」查看全文


一个全面的回归分析包含对异常值的分析,包括离群值、高杠杆值点和强影响点。这些点需要更深入的研究,它们在一定程度上与其他观测值不同,可能对结果产生较大的负面影响。下面我们依次学习这些异常值的判定方法。

1.离群点

原则:标准化残差值大于2或者小于-2,我们认为这些点可能是离群点,需要特别关注。还可以,结合Q-Q图认为落在置信区间外的点可能是离群点。用R语言执行一下,第一种方法的效果。第二种方法,在此不再介绍。

library(car)

states       fit      outlierTest(fit)

2.高杠杆值点

一般来说,若观测值的估计值大于估计值的均值的2倍或3倍,就可以认定为高杠杆值点。
hat.plot             p             n             plot(hatvalues(fit), main="Index Plot of Hat Vlues")
abline(h=c(2,3*p/n,col="red",lty=2))
identify(1:n,hatvalues(fit), names(hatvalues(fit)))
}
hat.plot(fit)

3.强影响点

有两种方法可以检测强影响点:Cook距离,或D统计量,以及变量添加图。一般来说,Cook‘s D值大于4/(n-k-1),则表明它是强影响点。

cutoffplot(fit,which=4,cook.levels=cutoff)
abline(h=cutoff,lty=2,col="red")

当然,我们还可以将离群点、杠杆值和强影响点的信息整合到一张图形中。

influencePlot(fit,id.method= "identify", main="Influence Plot",
sub="Circle size is proportional  to  Cook's distance")

更多数据分析,还请继续关注 R语言实战



合作QQ:2127198282












请到「今天看啥」查看全文