【问题标题】:Error in computing outliers计算异常值时出错
【发布时间】:2018-01-20 13:42:27
【问题描述】:

我正在尝试使用 R 中的马氏距离计算多元异常值,但当我尝试绘制结果时收到警告消息。

这里有插图,

# 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(...) 中的错误:'ylim' 需要有限值

另外:警告信息: 在 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 的平均值

什么意思?

【问题讨论】:

  • 我无法获取数据。您能否在这个问题中提供一个独立的 complete minimal reproducible example
  • 我不明白你在问什么。数据集非常典型。如果您将“玻璃数据集”放在谷歌上,您可以看到数百万个条目。而且我认为,我对代码和问题的了解很少且很清楚,显示代码的输出是错误的。你还需要什么?
  • 我很抱歉没有在 Google 上搜索您的数据集来帮助您解决您的问题。我只是单击了链接,但无法访问该网站。我应该意识到它是一个广泛使用的数据集。傻我。我需要的是您使用的数据集,以便我可以重现您的问题。我正在努力帮助你。
  • 这是另外两个链接 kaggle.com/uciml/glass , V 。对不起我的链接,它对我有好处,我不知道你为什么失败。

标签: r outliers


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2021-08-05
    • 1970-01-01
    • 2022-11-25
    • 2020-07-21
    • 2014-04-20
    • 2012-10-03
    • 1970-01-01
    • 2021-03-29
    • 1970-01-01
    相关资源
    最近更新 更多