Tyl*_*ker 27
我想你正在寻找帽子的价值观.
使用hatvalues(fit).经验法则是检查任何比平均帽值大2-3倍的观察结果.我不知道在我的脑海中有一个特定的功能或包,它提供了一个很好的数据框架中的信息,但是自己做这件事是相当简单的.这是一个例子:
fit <- lm(hp ~ cyl + mpg, data=mtcars) #a fake model
hatvalues(fit)
hv <- as.data.frame(hatvalues(fit))
mn <-mean(hatvalues(fit))
hv$warn <- ifelse(hv[, 'hatvalues(fit)']>3*mn, 'x3',
ifelse(hv[, 'hatvalues(fit)']>2*mn, 'x3', '-' ))
hv
Run Code Online (Sandbox Code Playgroud)
对于较大的数据集,您可以使用subset和/或order仅查看帽值的某些值范围:
subset(hv, warn=="x3")
subset(hv, warn%in%c("x2", "x3"))
hv[order(hv['hatvalues(fit)']), ]
Run Code Online (Sandbox Code Playgroud)
我实际上遇到了一个很好的情节功能,它在R in Action一书中做到了这一点,但由于这是一本受版权保护的书,我不会展示Kabacoff的知识产权.但是对于中型数据集,该情节会更好.
这是一个不错的帽子情节虽然你可能也想调查:
plot(hatvalues(fit), type = "h")
Run Code Online (Sandbox Code Playgroud)