如何使用库克距离从数据集中删除离群值?

时间:2018-09-13 20:39:24

标签: r statistics outliers

我们需要从模型的数据集中删除异常值/影响点。我有400个观察结果和5个解释变量。

我已经尝试过了:

Outlier <- as.numeric(names (cooksdistance)[(cooksdistance > 4 / sample_size)))

库克距离是模型计算出的库克距离。

问题在于,这并没有给我真正的异常值。

1 个答案:

答案 0 :(得分:0)

在用于有影响力的观察选择的公式中,条件应如下:如果观察的库克距离大于库克距离的4倍,则可以认为它是有影响力的(可能是离群值)。

  

库克距离或库克D是对数据点影响的常用估计值
  在执行最小二乘回归分析时。

     

至少在实践中是普通的    在平方分析中,可通过多种方式使用库克距离:表示有影响力的数据>特别值得验证有效性的点;或指出    设计空间,这样可以获取更多数据点。

     

通常,那些具有   厨师的距离大于平均值的4倍,可以归类为   有影响。这不是硬性界限。

请以ozone数据集的influential observation identification为例:

ozone <- read.csv("http://rstatistics.net/wp-content/uploads/2015/09/ozone.csv")
m <- lm(ozone_reading ~ ., data=ozone)
cooksdistance <- cooks.distance(m)

influential <- as.numeric(names(cooksdistance)[(cooksdistance > 4 * mean(cooksdistance, na.rm = TRUE))]) 

ozone[influential, ]
#     Month Day_of_month Day_of_week ozone_reading pressure_height Wind_speed Humidity Temperature_Sandburg Temperature_ElMonte
# 19      1           19           1          4.07            5680          5       73                   52               56.48
# 23      1           23           5          4.90            5700          5       59                   69               51.08
# 58      2           27           5         22.89            5740          3       47                   53               58.82
# 133     5           12           3         33.04            5880          3       80                   80               73.04
# 135     5           14           5         31.15            5850          4       76                   78               71.24
# 149     5           28           5          4.82            5750          3       76                   65               51.08
# 243     8           30           1         37.98            5950          5       62                   92               82.40
# 273     9           29           3          4.60            5640          5       93                   63               54.32
# 286    10           12           2          7.00            5830          8       77                   71               67.10
#     Inversion_base_height Pressure_gradient Inversion_temperature Visibility
# 19                    393               -68                 69.80         10
# 23                   3044                18                 52.88        150
# 58                    885                -4                 67.10         80
# 133                   436                 0                 86.36         40
# 135                  1181                50                 79.88         17
# 149                  3644                86                 59.36         70
# 243                   557                 0                 90.68         70
# 273                  5000                30                 52.70         70
# 286                   337               -17                 81.14         20

解释:

  

第58、133、135行的臭氧读数非常高。

     

第23、135和149行的Inversion_base_height非常高。

     

第19行的Pressure_gradient非常低。