问题标签 [outliers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2389 浏览

c++ - 小集合中的异常值检测

有没有一种很好的算法来检测一小组十进制数中的异常值?到目前为止,我想出的最好的想法是一种基于递归标准偏差的方法,但它似乎在计算上有点昂贵。

我正在使用 c++,因此欢迎您回答 Boost 或其他数学助手库中的任何现有功能。

谢谢。

0 投票
1 回答
840 浏览

matlab - 概率/频率分布中的异常值检测

我有以下二维数据集。(X 和 Y) 都是连续随机变量。

Z = (X, y) = {(1, 7), (2, 15), (3, 24), (4, 25), (5, 29), (6, 32), (7, 34) , (8, 35), (9, 27), (10, 39)}

我想检测关于 y 变量值的异常值。y 变量的正常范围是 10-35。因此,上述数据集中的第一对和最后一对是异常值,其他是正常的巴黎。我想将变量 z = (x, y) 转换为异常值(第一对和最后一对)位于标准偏差 1 之外的概率/频率分布。谁能帮我解决这个问题。

PS:我尝试过不同的距离,例如欧几里德距离和马氏距离,但没有奏效。

0 投票
1 回答
5858 浏览

python - python pandas如何从数据框中删除异常值并替换为先前记录的平均值

我有一个数据框 16k 记录和多组国家和其他领域。我已经生成了 a 数据的初始输出,如下所示。现在我需要进行一些数据清理、操作、删除偏差或异常值,并将其替换为基于某些规则的值。

即在下面,我如何识别倾斜点(任何大于 1 的值)并将它们替换为下两条记录的平均值,或者如果没有以后的记录,则将它们替换为上一条记录。(在该组中)

因此,在下面的数据框中,我想用 IT 的第 2 周和第 3 周的平均值替换 1.21 的 IT 第 1 周的 Bill%4,因此它是 0.81。

有什么技巧吗?

0 投票
1 回答
274 浏览

r - 使用 R 从数据帧的不同列中删除不同长度的异常值

我有一个大数据框。我想从箱形图中推断出的数据框的每一列中删除异常值。这是一个可重现的示例-

制作一个包含 3 列 + 几个异常值的虚拟数据框

定义每列的异常值

通过省略异常值来子集数据

令人惊讶的是,它仅部分适用于警告?!?

子集后的数据看起来像

对于第 1 列,它只删除了 -555,保留了 444??对第 2 列和第 3 列效果很好。警告消息清楚地说明了它发生的原因。通过从每个组中删除一个异常值,它可能会保持相似的长度......

我的第二种方法是使所有异常值“NA”

不行!!我怎么解决这个问题?

0 投票
0 回答
175 浏览

r - 多元回归比较有和没有异常情况

我目前正在进行多元回归,并使用包aq.plot中的函数确定了数据中的 3 个主要异常值mvoutlier。特别是一个案例似乎不太可能,我试图找到一种方法来比较我的模型有和没有这个案例。有这样做的功能吗?

0 投票
1 回答
4911 浏览

python - 使用 K 最近邻进行异常检测?

我想制作一个基于 19 个特征流量统计的网络入侵检测系统。我已经成功尝试过 One Class SVM 算法,但听说 k 最近邻也可以执行此任务。同样,我有一个无异常的训练数据集和一个带有一些异常和相关标签的测试数据集(1 表示正常,-1 表示异常)。

training_samples.csv(200 个第一个样本,完整文件包含 ~1200)

testing_samples.csv(100 个第一个样本,完整文件包含 193 个)

testing_labels.csv(100 个第一个标签,完整文件包含 193 个)

我正在使用 Scikit-Learn 的 KNeighborsClassifier 实现,但所有预测标签都设置为 1:

是否可以使用 K 最近邻算法(如果不是来自 sklearn,来自另一个库)来执行新奇/异常值检测?

0 投票
5 回答
49476 浏览

r - 从 R 中使用 ggplot2 制作的多个箱线图中完全删除异常值,并以扩展格式显示箱线图

我在这里有一些数据[在 .txt 文件中],我将其读入数据框 df,

我使用以下代码删除列中的负值x(因为我只需要正值) ,df

现在我想在同一层绘制多个箱线图。我首先融化了数据框df,结果图包含几个异常值,如下所示。

带有异常值的箱线图

现在我需要有一个没有任何异常值的图,所以首先我计算下限和上限晶须,我使用以下代码,如下所示

为了消除异常值,我添加了上下晶须限制,如下所示,

结果图如下所示,而上面的代码行正确地删除了大部分顶部异常值,所有底部异常值仍然存在。有人可以建议如何从这个情节中完全删除所有异常值,谢谢。

在此处输入图像描述

0 投票
1 回答
373 浏览

algorithm - 使用 ELKI MiniGUI 创建空间 KNN 用于属性值的空间异常值检测。

我在使用 ELKI MiniGUI 运行空间异常值检测算法时遇到了困难。许多算法需要数据库中每个对象的 KNN 列表。似乎首先需要从空间坐标数据库创建 KNN 标签列表,不包括属性。然后,我假设空间异常值检测算法与空间 KNN 的外部文件一起在属性数据库上运行。

我的 Java 经验有限,所以我想在命令行中使用 ELKI,并使用 MiniGUI 为每个任务组装代码。但是,使用 MiniGUI,我只能为 1) 三角距离矩阵和 2) KNN 距离顺序创建或具体化外部文件,这似乎包括对象本身作为 KNN 之一。看来我真的需要每个对象及其空间邻居列表的外部文件或缓存数据。也许 KNN 查询、KNN 连接、预先计算的距离或预处理的数据库过滤器会有所帮助,但我真的不知道。

需要哪些步骤来创建和使用为每个对象与其邻居的空间异常值检测属性关系提供 KNN 空间关系所需的文件或缓存数据?我不清楚如何用 MiniGUI 做到这一点,特别是因为看起来需要先创建空间邻域关系,然后才能将其与空间异常值检测算法和属性数据库一起使用。

任何意见是极大的赞赏。

谢谢!

0 投票
3 回答
4642 浏览

r - 替换 R 中的异常值

我需要一种方法来用值 -9999 替换异常值。在我的数据中,-9999 表示缺少该值。这只是通常用于此类数据而不是 NA 的约定

我有一个名为 amf 的数据框,它有 43 列。我需要逐列并用 -9999 替换 99 个百分位以上和 1 个百分位以下的每个值。我需要跳过一些列,例如一年中的某一天。

我尝试过以各种方式使用 apply 和 lapply 函数,但我一定是错误地使用了它们。这是我尝试过的

这些都没有奏效。有什么建议么?

0 投票
1 回答
669 浏览

matlab - for循环中的MAD异常值分析

我正在对矩阵B(126 x 7) 进行中值绝对偏差异常值分析。我认为我下面的代码可以正常工作,但我收到关于尺寸不匹配的错误。谁能帮我?我仍然是 MATLAB 的初学者。