TransformAnomalies

TransformAnomalies[data,tspec]

使用转换规范 tspec 转换数据中的异常值.

TransformAnomalies[data,dspectspec]

使用规范 dspec 检测异常值.

TransformAnomalies[tab,{col1spec1,}]

使用规范 speci 对表格数据 tab 的列 coli 进行转换.

更多信息

  • TransformAnomalies 也被称为异常检测或离群点处理.
  • TransformAnomalies 通过有效识别和管理异常值,帮助维护数据质量,从而确保分析结果的可靠性.
  • 可能的 data 形式包括:
  • {el1,el2,}单个元素的列表
    tab表格数据
  • 表格数据 tab 的可能形式包括:
  • Tabular表格对象
    Dataset数据集对象
    {assoc1,assoc2,}关联列表
    matrix矩阵
  • 用于管理异常值的可能转换规范 tspec 包括:
  • "Clip"将极值限制在非异常范围内
    "Replace"用计算值替换异常值
    {"Replace",method}使用 method 替换异常值
    "Trim"删除异常元素
    "Flag"Missing["Anomalous"] 替换异常值
    tfun使用函数 tfun 转换异常值
  • 可能的 "Replace" 方法与 TransformMissing 中的相同:
  • " Mean"平均值
    "Median"中位数
    "Mode"最常见值
    {"Constant", val}常数值 val
    "RandomElement"随机选择的值
    {"RandomVariate",dist}dist 中采样的值
    "NearestElement"使用最近的非缺失元素
    "NextElement"使用下一个非缺失元素
    "PreviousElement"使用前一个非缺失元素
    "Interpolation"使用插值
    {"Interpolation",InterpolationOrderdegree}指定插值阶数 degree
  • 排除异常值可以最小化其对分析的影响. 通过裁剪或替换可以在保持数据集结构的同时最小化异常值的影响. 标记则允许保留所有数据点以供进一步分析,同时突出显示需要审查的异常值.
  • 可用于检测异常值的方法 dspec 包括:
  • "IQR"四分位距阈值
    "ZScore"与均值的标准差
    "ModifiedZScore"使用中位数和MAD的稳健版本
    {spec,t}指定用于异常检测的阈值
    {spec,{t1,t2}}指定上下阈值
  • 此外,还支持以下规范:
  • Scaled[f]最小和最大元素的比例 f
    Scaled[{f1,f2}]最小和最大元素的单独阈值
    dfun自定义函数 fun
  • 自定义异常检测器 dfun 单独应用于每个元素,并且必须返回布尔值.
  • 指定所需的列时,coli 可以采用以下格式:
  • nn
    "name""name"
    TypeSpecifier[]与指定类型匹配的列
    All所有列
    Automatic根据 spec 自动查找列(默认)

范例

打开所有单元关闭所有单元

基本范例  (2)

通过删除较大和较小的值来处理异常值:

剪切 95% 百分位数以上的数据:

范围  (16)

数据类型  (5)

检测列表中的异常:

检测 TabularColumn 中的异常:

检测矩阵列上的异常:

检测 Tabular 对象中的异常:

检测同一键的关联列表中的异常:

检测方法  (6)

使用四分位距检测异常:

使用 z 分数检测异常:

使用修改后的 z 分数检测异常:

指定自定义阈值:

分别指定上限和下限阈值:

标记最小和最大元素的比例:

分别指定最小和最大比例:

使用自定义函数检测异常值:

转换方法  (5)

移除异常值:

用最接近的有效值裁剪异常值:

用缺失元素替换异常值:

应用任何 TransformMissing 规范:

应用自定义转换:

应用  (2)

以销售数据的 Tabular 对象为例:

"Sales" 列包含异常零值,代表缺失值:

通过从原始数据中删除相关行来转换零值异常:

通过将零值转换为 Missing 对象来变换零值异常:

检查新数据:

以天气观测的 Tabular 对象为例:

绘制温度:

温度数据似乎包含异常值,这可能是由于以错误的单位输入数据造成的. 同样,"Pressure" 列包含异常值,即数字 99,它通常用于代替缺失值. 指定温度单位转换函数:

使用上述函数对 "Temperature" 列中的异常值进行转换,并在 "Pressure" 列中用最接近的有效值替换异常值:

绘制观测值:

Wolfram Research (2025),TransformAnomalies,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TransformAnomalies.html.

文本

Wolfram Research (2025),TransformAnomalies,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TransformAnomalies.html.

CMS

Wolfram 语言. 2025. "TransformAnomalies." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/TransformAnomalies.html.

APA

Wolfram 语言. (2025). TransformAnomalies. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TransformAnomalies.html 年

BibTeX

@misc{reference.wolfram_2025_transformanomalies, author="Wolfram Research", title="{TransformAnomalies}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/TransformAnomalies.html}", note=[Accessed: 13-May-2025 ]}

BibLaTeX

@online{reference.wolfram_2025_transformanomalies, organization={Wolfram Research}, title={TransformAnomalies}, year={2025}, url={https://reference.wolfram.com/language/ref/TransformAnomalies.html}, note=[Accessed: 13-May-2025 ]}