【机器学习】数据清洗之处理异常点

🎈个人主页:甜美的江
🎉欢迎 👍点赞✍评论⭐收藏
🤗收录专栏:机器学习
🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!

【机器学习】数据清洗之处理异常点

  • 一 确定处理策略:
    • 1.1 考虑因素
    • 1.2 常用处理策略
  • 二 删除异常值
  • 三 替代异常值:
  • 四 转换异常值:
  • 五 三种处理策略的优缺点及应用场景
    • 5.1 删除异常点:
    • 5.2 替换异常点:
    • 5.3 转换异常点:
  • 六 总结

引言:

在数据分析和建模的过程中,我们常常会面对一个重要的问题:异常值。这些异常值可能是由于数据采集过程中的误差、设备故障或其他未知原因引起的。处理异常值是确保我们的模型能够稳健、准确地进行预测的关键一环。

本博客将深入探讨处理异常值的不同策略,以及它们各自的优缺点。首先,我们会详细介绍在确定处理策略时需要考虑的因素,然后深入研究常用的三种处理策略:删除、替代和转换异常值。通过这些讨论,我们旨在帮助读者更好地理解如何在实际应用中选择最适合的处理方法,以确保数据的质量和模型的鲁棒性。

在这里插入图片描述

一 确定处理策略:

1.1 考虑因素

1 异常值的来源:

首先要确定异常值是由于数据录入错误、测量错误、自然变异还是其他原因导致的。这有助于确定适当的处理方法。

2 数据的背景知识:

对数据所代表的领域有一定的了解是很重要的,因为某些领域的数据可能会有特定的异常模式或行为。

3 异常值的影响程度:

确定异常值对数据分析或建模的影响程度。如果异常值影响不大,可以考虑忽略它们;如果影响较大,则需要采取适当的处理措施。

4 数据的分布情况:

分析数据的分布情况,包括均值、中位数、标准差、四分位数等,以确定异常值的位置和数量。

5 处理方法的选择:

根据异常值的性质和数据的特点,选择合适的处理方法,如删除、替代、转换等。

6 数据完整性:

考虑处理异常值对数据完整性的影响。有时候,删除异常值可能会导致数据的缺失,需要权衡处理。

1.2 常用处理策略

1 删除异常值:

当异常值是由于数据录入错误或测量错误导致时,可以考虑直接删除这些异常值。删除异常值可能会影响数据的完整性,因此需要谨慎处理,并根据实际情况确定删除的阈值和方法。

2 替代异常值:

当异常值是真实存在的、但对数据分析或建模有不利影响时,可以考虑使用替代值来代替异常值。常用的替代值包括中位数、均值、众数等,也可以使用插值方法来估算异常值。

3 转换异常值:

对于无法删除或替代的异常值,可以考虑对其进行转换,使其更接近正常范围。常见的转换方法包括取对数、开方等变换。

4 使用专门算法处理异常值:

对于复杂的数据集或特定的异常值情况,可以考虑使用专门的异常值检测算法,如基于聚类的方法、孤立森林、One-Class SVM等。

5 综合考虑多种方法:

综合考虑多种方法来确定处理异常值的策略,可以提高处理的准确性和鲁棒性。

在实践中,确定处理异常值的策略通常是一个综合考虑多个因素的过程,需要根据具体情况灵活选择合适的方法。

二 删除异常值

在数据清洗过程中,删除异常值是一种常见的处理方法之一。异常值可能会严重影响数据分析和建模的结果,因此在某些情况下,删除异常值是合理的做法。下面是详细介绍数据清洗中删除异常值的步骤和注意事项:

1 确定异常值的阈值:

在删除异常值之前,需要先确定异常值的阈值。通常可以使用统计方法,如四分位距(IQR)来识别异常值。通过计算数据的上下四分位数(Q1和Q3),然后计算IQR(IQR = Q3 - Q1),再乘以一个常数(通常为1.5或3),得到异常值的上下限。

2 识别异常值:

使用确定的阈值,对数据集进行扫描,识别出超出阈值范围的数据点。这些数据点即被认定为异常值。

3 删除异常值:

一旦识别出异常值,可以选择将其删除。删除的方法包括完全删除异常值所在的行,或者将异常值替换为缺失值(如NaN)。

4 谨慎处理:

在删除异常值之前,需要仔细考虑异常值的来源和可能的影响。有时候,异常值可能是真实存在的极端情况,而不是数据错误。因此,在删除之前要确保异常值不是有意义的数据。

5 观察删除后的数据分布:

删除异常值之后,需要观察数据分布是否更加符合预期,并且数据的统计性质是否得到改善。可以绘制直方图、盒图等图表来比较删除前后的数据分布情况。

6 注意数据完整性:

删除异常值可能会导致数据的缺失,因此需要注意处理后数据的完整性。在删除异常值时,要确保删除的数据量不会影响到整体数据的可用性和代表性。

7 敏感性分析:

可以进行敏感性分析,尝试不同的异常值阈值,并观察结果的稳定性和可信度。有时候,异常值的识别阈值可能会影响最终的分析结果。

8 记录处理过程:

在数据清洗过程中,记录删除异常值的操作,包括删除的数据数量、删除的原因、使用的阈值等信息。这有助于保留数据处理的记录和可追溯性。

总的来说,删除异常值是数据清洗中常用的一种处理方法,但在使用之前需要慎重考虑异常值的来源和可能的影响,以及删除后数据的完整性和可信度。

三 替代异常值:

在数据清洗过程中,除了删除异常值之外,另一种常见的处理方法是替代异常值。替代异常值意味着用其他数值代替异常值,从而保留数据点并降低异常值对分析结果的影响。下面是详细介绍数据清洗中替代异常值的步骤和方法:

1 确定替代策略:

在替代异常值之前,需要确定替代策略。

常见的替代策略包括用平均值、中位数、众数、特定分布的随机值或者利用插值方法估算的值来替代异常值。

2 识别异常值:

与删除异常值相同,首先需要识别数据中的异常值。

可以使用统计方法(如四分位距)或基于领域知识进行识别。

3 选择替代值:

一旦识别出异常值,根据确定的替代策略选择替代值。

选择替代值时,要考虑数据的分布、异常值的数量和位置,以及替代值对后续分析的影响。

4 替代方法:

替代异常值的方法有多种,包括:

1使用平均值或中位数:
将异常值替换为整个数据集的平均值或中位数。这种方法简单直接,但可能会受到异常值的影响。

2 使用众数
对于分类变量,可以将异常值替换为该变量的众数。

3 随机替代:
从特定分布中随机生成值来替代异常值。例如,可以根据数据的分布(如正态分布)生成随机值来替代异常值。

4 插值方法:
使用插值技术(如线性插值、多项式插值或样条插值)根据异常值前后的数据点估算替代值。

5 利用领域知识:
根据数据背景和领域知识来确定替代值,例如使用相邻时间点的数据或相关变量的数据进行替代。

5 观察替代后的数据分布

替代异常值之后,需要观察数据分布是否更加符合预期,并且数据的统计性质是否得到改善。

可以绘制直方图、盒图等图表来比较替代前后的数据分布情况。

6 谨慎选择替代值

在选择替代值时要谨慎,确保替代值不会引入更大的偏差或错误。

合理的替代值应该尽可能地保留原始数据的特征和信息。

7 记录处理过程

与删除异常值一样,对替代异常值的操作也需要记录,包括使用的替代方法、替代值的选择原因等信息,以便于后续分析和可追溯性。

总的来说,替代异常值是数据清洗中常用的一种处理方法,适用于保留异常值的情况下,并通过合理的替代值降低异常值对分析结果的影响。

四 转换异常值:

在数据清洗过程中,转换异常值是一种处理异常点的方法,其目的是通过对异常值进行变换或转换,将其调整为符合数据分布的合理值。

这种方法与替代异常值有所不同,因为它不是简单地用其他数值代替异常值,而是通过某种变换方式将异常值转换为更接近正常数据点的值。

下面是关于数据清洗中转换异常值的详细介绍:

1 识别异常值:

首先,需要识别数据中的异常值。这可以通过基于统计方法(如四分位距)或基于领域知识进行识别。

2 确定转换方式:

一旦异常值被识别出来,需要确定如何对其进行转换。

这通常需要结合数据的特点和异常值的分布情况来决定。

一些常见的转换方式包括:

对数转换:将数据取对数可以减小异常值的影响,并使得数据更接近正态分布。

平方根转换:类似地,平方根转换也可以减小异常值的影响,并且可以用于处理偏态分布。

Box-Cox转换:Box-Cox转换是一种参数化的转换方法,可以使数据更加接近正态分布。

截尾转换:将超出某个阈值的异常值截尾,使其等于该阈值。

Winsorization转换:将超出某个阈值的异常值替换为该阈值,类似于截尾转换,但是替换的方式不同。

3 应用转换:

选择合适的转换方式后,将其应用于异常值。

这可能需要对整个数据集进行转换,或者仅对异常值进行转换,具体取决于转换方式和数据的分布特点。

4 观察转换后的数据分布:

转换异常值之后,需要观察数据分布是否更加符合预期,并且数据的统计性质是否得到改善。

可以使用直方图、盒图等图表来比较转换前后的数据分布情况。

5 谨慎选择转换方式:

在选择转换方式时要谨慎,确保选择的方式能够有效地调整异常值,并且不会引入更大的偏差或错误。

合理的转换方式应该能够保留原始数据的特征和信息。

6 记录处理过程:

与其他数据清洗操作一样,对转换异常值的操作也需要进行记录,包括使用的转换方式、转换的原因以及转换后的结果等信息,以便于后续分析和可追溯性。

总的来说,转换异常值是数据清洗中常用的一种处理方法,适用于需要调整异常值以使其更符合数据分布的情况。通过合适的转换方式,可以有效地减小异常值对分析结果的影响,并提高数据的质量和可解释性。

五 三种处理策略的优缺点及应用场景

处理异常点的三种主要策略是删除、替换和转换。这些策略都有各自的优缺点,适用于不同的情况和需求。

5.1 删除异常点:

优点:

简单直接:删除异常点是最直观和简单的方法,不需要额外的计算或复杂的处理步骤。

不影响模型:删除异常点可以确保模型不受异常值的影响,从而提高模型的稳定性和准确性。

缺点:

信息丢失:删除异常点可能会导致数据信息的丢失,尤其是在数据量本来就不多的情况下,删除异常点可能会导致数据不足以训练出健壮的模型。

潜在偏见:删除异常点可能会引入数据偏见,特别是在异常点实际上是重要信息或特殊情况的情况下。

应用场景:

当异常点数量较少且对模型性能有负面影响时,可以考虑删除异常点。

对于异常点明显且对建模任务不重要的情况下,删除异常点是一个有效的处理方法。

5.2 替换异常点:

优点:

保留数据信息:替换异常点可以保留数据集的信息,避免了删除异常点可能导致的信息丢失问题。

维护数据结构:替换异常点可以确保数据集的结构和完整性,使其适合于一些模型的训练和应用。

缺点:

引入偏见:替换异常点可能会引入偏见,尤其是当替换方法不合理或不准确时,可能会导致结果不准确。

难以确定替换值:确定如何替换异常值通常是一个挑战,需要根据具体情况和领域知识来选择合适的替换方法。

应用场景:

当异常点数量较少且有合理的替换方法时,可以考虑替换异常点。

对于异常点对模型影响不大,但需要保留数据信息的情况下,替换异常点是一个合适的选择。

5.3 转换异常点:

优点:

保留异常信息:转换异常点可以将异常值转换成其他值,从而保留了异常点的信息,同时降低了其对模型的影响。

灵活性:转换异常点可以根据具体情况采取不同的转换方法,使其更加灵活适应各种场景。

缺点:

需要领域知识:转换异常点需要对数据和领域有深入的理解,以确保选取的转换方法合理且有效。

增加复杂度:转换异常点可能会增加数据处理的复杂度,并且需要谨慎地选择合适的转换方法。

应用场景:

当需要保留异常点信息同时减少其对模型的影响时,可以考虑转换异常点。

对于异常点数量较多且需要根据具体情况进行个性化处理时,转换异常点是一个合适的选择。

在实际应用中,通常需要根据具体情况综合考虑这三种策略的优缺点,并根据数据特点、领域知识和建模需求选择合适的处理方法。

六 总结

在本博客中,我们深入研究了处理异常值的三种主要策略:删除、替代和转换。我们首先讨论了确定处理策略时需要考虑的因素,包括数据特点、领域知识和建模需求。
接着,我们详细介绍了删除异常值、替代异常值和转换异常值的方法,并对每种方法的优缺点进行了全面分析。

删除异常点是一种简单直接的方法,但可能导致信息丢失;

替代异常点保留了数据信息,但可能引入偏见;

而转换异常点则在保留异常信息的同时减少其对模型的影响,但需要更多的领域知识。

最后,我们总结了每种策略的应用场景,以帮助读者在实际应用中做出明智的选择。无论您是在进行数据清洗、建模还是分析,选择合适的异常值处理策略都将对最终结果产生深远的影响。

这篇文章到这里就结束了

谢谢大家的阅读!

如果觉得这篇博客对你有用的话,别忘记三连哦。

我是甜美的江,让我们我们下次再见

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/256809.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

刘知远LLM——神经网络基础

文章目录 神经网络基础基本构成如何训练? Word2Vec例子负采样: 循环神经网络 RNN门控计算单元 GRU长短时记忆网络 LSTM遗忘门输入门输出门双向RNN卷积神经网络 CNNpytorch实战 神经网络基础 基本构成 全称:人工神经网络。启发于生物神经细胞…

162基于matlab的多尺度和谱峭度算法对振动信号进行降噪处理

基于matlab的多尺度和谱峭度算法对振动信号进行降噪处理,选择信号峭度最大的频段进行滤波,输出多尺度谱峭度及降噪结果。程序已调通,可直接运行。 162 matlab 信号处理 多尺度谱峭度 (xiaohongshu.com)

【大模型上下文长度扩展】MedGPT:解决遗忘 + 永久记忆 + 无限上下文

MedGPT:解决遗忘 永久记忆 无限上下文 问题:如何提升语言模型在长对话中的记忆和处理能力?子问题1:有限上下文窗口的限制子问题2:复杂文档处理的挑战子问题3:长期记忆的维护子问题4:即时信息检…

计算机网络——09Web-and-HTTP

Web and HTTP 一些术语 Web页:由一些对象组成对象可以是HTML文件、JPEG图像,JAVA小程序,声音剪辑文件等Web页含有一个基本的HTML文件,该基本HTML文件又包含若干对象的引用(链接)通过URL对每个对象进行引用…

HiveSQL——共同使用ip的用户检测问题【自关联问题】

注:参考文章: SQL 之共同使用ip用户检测问题【自关联问题】-HQL面试题48【拼多多面试题】_hive sql 自关联-CSDN博客文章浏览阅读810次。0 问题描述create table log( uid char(10), ip char(15), time timestamp);insert into log valuesinsert into l…

【芯片设计- RTL 数字逻辑设计入门 12 -- verilog 有符号数加减法】

文章目录 多功能数据处理器描述verilog 无符号数与有符号数8d100 8d1558d100 8d1568d100 8d157verilog 代码实现TestBench 代码VCS 仿真结果 多功能数据处理器描述 根据指示信号select的不同,对输入信号a,b实现不同的运算。输入信号a,b为8bit有符号数&#xff1…

Javaweb之SpringBootWeb案例之propagation属性案例演示的详细解析

案例 接下来我们就通过一个案例来演示下事务传播行为propagation属性的使用。 需求:解散部门时需要记录操作日志 由于解散部门是一个非常重要而且非常危险的操作,所以在业务当中要求每一次执行解散部门的操作都需要留下痕迹,就是要记录操作…

探索设计模式的魅力:捕捉变化的风-用观察者模式提升用户体验

设计模式专栏:http://t.csdnimg.cn/U54zu 目录 一、引言 核心概念 应用场景 可以解决的问题 二、场景案例 2.1 不用设计模式实现 2.2 存在问题 2.3 使用设计模式实现 2.4 成功克服 三、工作原理 3.1 结构图和说明 3.2 工作原理详解 3.3 实现步骤 四、 优…

【linux系统体验】-ubuntu简易折腾

ubuntu 一、终端美化二、桌面美化2.1 插件安装2.2 主题和图标2.3 美化配置 三、常用命令 以后看不看不重要,咱就是想记点儿东西。一、终端美化 安装oh my posh,参考链接:Linux 终端美化 1、安装字体 oh my posh美化工具可以使用合适的字体&a…

wireshark分析数据包:追踪流

打开追踪流的界面 方法 1 方法 2 选中数据包,右键弹出菜单 说明: 流内容的显示顺序和它在网络上出现的顺序相同。不可打印的字符被点代替。从客户端到服务器的流量被标记为红色,而从服务器到客户端的流量被标记为蓝色。这些颜色可以通过下…

【算法随想录01】环形链表

题目:141. 环形链表 难度:EASY 代码 哈希表遍历求解,表中存储的是元素地址。 时间复杂度 O ( N ) O(N) O(N),空间复杂度 O ( N ) O(N) O(N) /*** Definition for singly-linked list.* struct ListNode {* int val;* …

【C++初阶】第三站:类和对象(中) -- 类的6个默认成员函数

目录 前言 类的6个默认成员函数 构造函数 概念 特性 析构函数 概念 特性 拷贝构造函数 概念 特征 赋值运算符重载 运算符重载 赋值运算符重载 const成员 const修饰类成员函数 取地址及const取地址操作符重载 本章总结: 前言 有时候我们写好了一个栈,头脑…

[计算机提升] 备份系统:设置备份

6.5 备份系统:设置备份 1、进入到控制面板系统和安全\备份和还原,点击右侧的设置备份: 2、在弹出的设置备份对话框中,选择要保存的位置,点击下一步开始备份。 3、选择要备份的内容。根据需要选择即可。这种备份的…

百面嵌入式专栏(面试题)驱动开发面试题汇总1.0

沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇我们将介绍驱动开发面试题 。 1、Linux驱动程序的功能是什么? 对设备初始化和释放。进行内核与硬件的数据交互。检测和处理设备出现的错误。2、内核程序中申请内存使用什么函数? 答案:kmalloc()、kzalloc()、vm…

[Python进阶] 识别验证码

11.3 识别验证码 我们再开发某些项目的时候,如果遇到要登录某些网页,那么会经常遇到输入验证码的情况,而每次人工输入验证码的话,比较浪费时间。于是,可以通过调用某些接口进行识别。 11.3.1 调用百度文字识别接口 …

华为问界M9:全方位自动驾驶技术解决方案

华为问界M9的自动驾驶技术采用了多种方法来提高驾驶的便利性和安全性。以下是一些关键技术: 智能感知系统:问界M9配备了先进的传感器,包括高清摄像头、毫米波雷达、超声波雷达等,这些传感器可以实时监测车辆周围的环境&#xff0…

网安常用的三个攻击方式

1.渗透测试执行标准(PTES) 渗透测试执行标准由7个部分组成,包括前期交互、情报收集、威胁建模、漏洞分析、渗透利用、后渗透、撰写报告。在中国,渗透测试必须经过授权,否则就违背了网络安全法。前期交互主要指开展渗透…

项目部署小问题记录

1.搭建springboot项目,后台映射进不去(原因为代码和启动类不在一个包下) 2.服务器中,root用户命令提示没有权限 找到要操作的文件,查看属性 lsattr 发现文件有i属性(即不可修改) chattr -i webapps/ 去除掉i属性3.项目放到tomcat中去除上下文 在Host中把appBase置空,增加…

Linux系统之部署File Browser文件管理系统

Linux系统之部署File Browser文件管理系统 一、File Browser介绍1.1 File Browser简介1.2 File Browser功能1.3 File Browser使用场景 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本 四、安装File Browser4…

在没有鼠标或键盘的情况下在 Mac 上如何启用蓝牙?

通过这个技巧,小编将向您展示几种无需鼠标或键盘即可在 Mac 上重新启用蓝牙的方法。如果您想开始使用蓝牙配件,但还没有连接,这会很有用。 无需鼠标即可启用蓝牙 蓝牙是iPhone、iPad和 Mac 的标准配置。它确保您可以无线使用各种配件&#…