Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

清理离群数据

在实时编辑器中查找、填充或删除离群值

说明

清理离群数据任务允许您以交互方式处理数据中的离群值。该任务会自动为您的实时脚本生成 MATLAB® 代码。

使用此任务,您可以:

  • 从工作区变量数据中查找、填充或删除离群值。

  • 自定义查找和填充离群值的方法。

  • 自动可视化离群数据和清理后的数据。

Clean Outlier Data task in Live Editor

打开任务

要在 MATLAB 编辑器中将清理离群数据任务添加到实时脚本中,请执行以下操作:

  • 实时编辑器选项卡上,选择任务 > 清理离群数据

  • 在脚本的代码块中,键入相关关键字,例如 outlierclean。从建议的命令自动填充项中选择清理离群数据

参数

此任务会对向量或表变量中包含的 singledouble 类型的数据进行操作。为输入数据提供表或时间表时,请指定所有支持变量以清理类型为 singledouble 的所有变量,或通过选择指定的变量,然后单独选择各所需变量,来选择要清理的 singledouble 变量。

使用以下选项之一指定填充离群值的方法。

填充方法说明
线性插值基于相邻的非离群值进行线性插值。
常量值指定的标量值,默认为 0
中心值由查找方法决定的中心值。
裁剪到阈值对于比查找方法决定的下阈值还小的元素,用下阈值填充。对于比查找方法决定的上阈值还大的元素,用上阈值填充。
上一个值上一个非离群值。
下一个值下一个非离群值。
最接近值最邻近的非离群值。
样条插值分段三次样条插值。
保形三次插值(PCHIP)保形分段三次样条插值。
修正 Akima 三次插值修正 Akima 三次 Hermite 插值。

使用以下选项之一指定查找离群值的检测方法。

方法说明
移动中位数离群值定义为指定窗口内与局部中位数相差超过指定局部换算 MAD 阈值的元素。默认阈值是 3
中位数离群值定义为与中位数相差超过指定换算中位数绝对偏差 (MAD) 阈值的元素,默认情况下,该阈值为 3。对于输入数据 A,换算 MAD 定义为 c*median(abs(A-median(A))),其中 c=-1/(sqrt(2)*erfcinv(3/2))
均值离群值定义为与均值相差超过指定标准差阈值的元素,默认情况下,该阈值为 3。此方法比“中位数”快,但没有后者可靠。
四分位数离群值定义为高于上四分位数 (75%) 或低于下四分位数 (25%) 超过指定四分位差阈值的元素,默认情况下,该阈值为 1.5。当输入数据不是正态分布时,这种方法很有用。
Grubbs使用 Grubbs 检验检测离群值,并基于假设检验每次迭代删除一个离群值。该方法假设输入数据是正态分布的。
广义极端 Student 化偏差(GESD)使用广义极端 Student 化偏差检验检测离群值。此迭代方法与 “Grubbs” 类似,但当多个离群值互相遮盖时,此方法的执行效果更好。
移动均值离群值定义为指定窗口内与局部均值相差超过指定局部标准差阈值的元素。默认阈值是 3
百分位数离群值定义为由上阈值和下阈值指定的百分位数范围之外的元素。默认的下百分位数阈值为 10,默认的上百分位数阈值为 90。有效阈值在区间 [0,100] 内。

当检测离群值的方法是“移动中位数”或“移动平均值”时,请指定窗口类型和大小。

窗口说明
居中指定的窗口长度以当前点为中心。
不对称指定的窗口包含当前点之前的元素数和当前点之后的元素数。

窗口大小相对于 X 轴变量单位。

在 R2019b 中推出