计算异常值时出错

时间:2018-01-20 13:42:28

标签: r outliers

我试图用R中的mahalanobis距离计算多变量异常值,但是当我尝试绘制结果时,我收到一条警告信息。

这里有说明,

# install.packages(c("mlbench"), dependencies = TRUE)
library(mlbench)
data(Glass)

mydata.numeric.scaled<-scale(Glass[,-10],center=T)
# install.packages(c("mvoutlier"), dependencies = TRUE)
library(mvoutlier)
alpha.value = 0.05
alpha.value.penalizado = 1 - ( 1 - alpha.value) ^ (1/nrow(mydata.numeric.scaled)) 
uni.plot(mydata.numeric.scaled,symb=FALSE, alpha = alpha.value.penalizado)

但是,我得到此错误/警告而不是情节:

  

plot.window(...)出错:&#39; ylim&#39;需要有限值

     

另外:警告信息:   在covMcd(x,alpha = quan)中:     变量8的绝对偏差的第112阶统计量为零。   有176个观测值(在整个214个数据集中)   方程a_1 *(x_i1 - m_1)+ ... + a_p *(x_ip - m_p)= 0的超平面(m_1,   ...,m_p)这些观测值的平均值和来自矢量a的系数a_i   &lt; -c(0,0,0,0,0,0,0,1,0)

这是什么意思?

1 个答案:

答案 0 :(得分:0)

错误在于用于计算covMcd的数据量。这可以通过将整个数据集设置quan = 1来解决。默认情况下quan = 1/2取数据集的一半。