特征工程-特征清洗

特征清洗

在进行玩特征理解后,我们大致理解了面对的数据中包含哪些内容。下一阶段,我么需要对数据中的内容进行进一步分析处理,针对不同数据进行清洗。数据清洗是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性
特征清洗

一.格式内容清洗

原因

  • 数据通常由人工收集或用户填写而来,很有可能存在格式和内容上的一些问题。
  • 不同版本的程序产生的内容或格式不一致;
  • 不同数据源采集而来的数据内容和格式定义不一致;

时间、日期格式不一致清洗

将时间和日期格式进行统一化后再进行统一处理

  • 建议将年月日时间格式统一为 “2019-07-20 10:99:22”;
  • 同时将不同时间颗粒度的时间数据进行对其处理,例如秒、毫秒、微秒的数据进行数据格式的对齐;

数值格式不一致清洗

根据实际需要将,不同保存格式的数据统一化,例如将一个特征下的所有数据全部统一为浮点数(float)类型。

内容中存在不应该有的字符

将不应该有的字符进行筛选与剔除,避免后续处理的问题

内容与字符要求不相符

由于人为填写错误等问题,造成填写错误或者是前端数据读取时没有校验,导致导入数据时部分没有对其或者全部没有对其。需要将其进行识别并处理。

数值类型不相符清洗

由于人为定义错误、转存、加载等原因,数据类型经常会出现数据类型不符的情况。例如:金额特征是字符串类型,实际上应该转换成int/float型。

二.逻辑错误清洗

1.数据重复

对于每个特征值都完全相同的重复数据,应该删除重复值,只保留一条。

pd.drop_duplicates()

对于数据不完全相同,但是作用完全相同的数据,也应该按需进行删除

pd.drop_duplicates(subset=['XX'], keep='last')

2.不合理内容

根据具体常识,可以明显判断出来该特征的部分数据不合理的,应该进行修改删除。例如:age:200, 月份:14

3.矛盾内容

有些字段是可以互相验证的,举例:身份证号是1101031980XXXXXXXX,然后年龄填18岁。在这种时候,需要根据字段的数据来源,来判定哪个字段提供的信息更为可靠,去除或重构不可靠的字段。

三.异常值清洗

在数据分布中,处于特定分布区域或范围之外的数据通常被定义为异常或者噪声。
异常通常分为两种:

  • 伪异常:由于业务运营策略改变导致的数据波动,是正常的业务反应,而不是数据本身的异常;
  • 真异常:非业务变化带来的巨大的数据变化,即数据本身的异常。

3.1 异常值判断

3.1.1. 基于统计分析

过分析统计数据的散度情况,即数据变异指标,来对数据的总体特征有更进一步的了解,对数据的分布情况有所了解,进而通过数据变异指标来发现数据中的异常点数据。
常用的数据变异指标有极差、四分位数间距、均差、标准差、变异系数等等,变异指标的值大表示变异大、散布广;值小表示离差小,较密集。

3.1.2. 3σ原则

若数据存在正态分布,在3σ原则下,异常值为一组测定值中与平均值的偏差超过3倍标准差的值。如果数据服从正态分布,距离平均值3σ之外的值出现的概率为 P ( ∣ x − μ ∣ > 3 σ ) < = 0.003 P(|x - μ| > 3σ) <= 0.003 P(xμ>3σ)<=0.003,属于极个别的小概率事件。如果数据不服从正态分布,也可以用远离平均值的多少倍标准差来描述。

3.1.3. 箱线图

箱线图提供了识别异常值的一个标准:如果一个值小于QL-1.5IQR或大于OU+1.5IQR的值,则被称为异常值。

箱型图判断异常值的方法以四分位数和四分位距为基础,四分位数具有鲁棒性:25%的数据可以变得任意远并且不会干扰四分位数,所以异常值不能对这个标准施加影响。因此箱型图识别异常值比较客观,在识别异常值时有一定的优越性。

3.1.4. 基于模型检测

首先建立一个数据模型,异常是那些同模型不能完美拟合的对象;如果模型是簇的集合,则异常是不显著属于任何簇的对象;在使用回归模型时,异常是相对远离预测值的对象。

3.1.5. 基于距离检测

基于距离的方法是基于下面这个假设:即若一个数据对象和大多数点距离都很远,那这个对象就是异常。通过定义对象之间的临近性度量,根据距离判断异常对象是否远离其他对象,主要使用的距离度量方法有绝对距离(曼哈顿距离)、欧氏距离和马氏距离等方法。

3.1.6. 基于密度

考察当前点周围密度,可以发现局部异常点,离群点的局部密度显著低于大部分近邻点,适用于非均匀的数据集。

3.2 数据光滑处理

检测出异常值后,对异常值进行处理。

3.2.1 分箱

分箱方法通过考察数据的近邻来光滑数据的值,有序值分布到不同的"桶"或者箱中,得到局部光滑的结果。
分箱方法:

  • 等高方法
  • 等宽方法
  • 决策树方法
3.2.2 回归

可以用一个函数(如回归函数)拟合数据来光滑数据。线性回归涉及找出拟合两个属性(或变量)的“最佳”线,是的一个属性可以用来预测另一个。多元线性回归是线性回归的扩展,其中涉及的属性多于两个,并且数据拟合到一个多维曲面。

3.3 异常值处理方法

对异常值处理,需要具体情况具体分析,异常值处理的方法常用有四种:

  • 删除含有异常值的记录;
  • 将异常值视为缺失值,交给缺失值处理方法来处理;
  • 使用均值/中位数/众数来修正;
  • 不处理。

四.缺失值清洗

4.1 造成缺失值的原因

  • 信息暂时无法获取
  • 信息没有获取成功
  • 获取的信息不可解析或不可用
  • 获取信息的要求性比较高,造成信息缺失

4.2缺失值处理方法

  • 数据删除;
  • 数据填充;
  • 不处理;

4.3 数据填充方法

  • 人工填充
  • 统计值填补
    • 均值填补
    • 最大或最小值填补
    • 前向值填补
    • 后向值填补
  • 模型预测填补
  • 插值填补
  • 期望最大化填补
  • 随机值填补

参考文章:
原文链接:https://blog.csdn.net/zhaodedong/article/details/98001930

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于css实现动画效果

介绍 本文将会基于css&#xff0c;实现各种动画效果&#xff0c;接下来会从简单几个例子入手。 案例 三颗球 <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8" /><title>React App</title><style>…

软件测试|Python requests库的安装和使用指南

简介 requests库是Python中一款流行的HTTP请求库&#xff0c;用于简化HTTP请求的发送和处理&#xff0c;也是我们在使用Python做接口自动化测试时&#xff0c;最常用的第三方库。本文将介绍如何安装和使用requests库&#xff0c;以及一些常见的用例示例。 安装requests库 首…

Fenwick Tree——树状数组

问题陈述&#xff1a; 你得到一个长度为 N 的数组为 a0,a1,a2……an-1。处理以下类型的查询&#xff0c;一共有 Q 次查询。 0 p x : ap⬅ap x 1 l r : 打印 ai ( il 到 ir-1 的 ai 之和) 约束&#xff1a; 1 ≤ N,Q ≤ 500000 0 ≤ ai,x ≤ 1e9 0 ≤ p < N 0 ≤ li <…

算法训练营Day43(完全背包[组合排列])

完全背包理论 正序遍历&#xff0c;先背包先物品都可以&#xff0c; 正序遍历的话&#xff0c;之前的物品价值还在&#xff0c;可以用上。 物品和背包都是有前面推出来&#xff0c;都可以。 但是其他的非纯理论的完全背包问题就要看场景&#xff0c;确定先背包还是先物品了 //先…

Google Pixel 与 iPhone手机:哪个更好?

iPhone稳定可靠&#xff0c;Pixel性价比高且创新。两者各有千秋&#xff0c;满足不同需求 谷歌的 Pixel 手机是 Android 最接近 iPhone 的手机&#xff0c;也是真正原生的Android手机。在iPhone 15 Pro Max 与华为 Mate 60 Pro的比较中不难看出&#xff0c;iPhone依然有着极强…

SAP 获取物料/批次/订单的特性值(学习一)

1、事务码 MSC1N、MSC2N、MSC3N 2、常用表 MCH1、MCHA、AUSP、MCH*开头的几个 3、批次 1、创建批次 BAPI&#xff1a;BAPI_BATCH_CREATE 2、修改批次 BAPI&#xff1a;BAPI_BATCH_CHANGE 3、删除批次 BAPI&#xff1a;BAPI_BATCH_DELETE 4、获取批次明细 BAPI&…

vpp node 及 vpp 多线程

node 注册 node注册&#xff0c;即宏VLIB_REGISTER_NODE(x, ...)流程&#xff1a; 创建vlib_node_registration_t x&#xff1b;vlib_node_registration_t结构只是存放了用户提供的node相关信息。把x添加到全局变量vlib_global_main中的node_registrations链表中&#xff08;…

本地开发环境请求服务器接口跨域的问题(vue的问题)

上面的这个报错大家都不会陌生&#xff0c;报错是说没有访问权限&#xff08;跨域问题&#xff09;。本地开发项目请求服务器接口的时候&#xff0c;因为客户端的同源策略&#xff0c;导致了跨域的问题。下面先演示一个没有配置允许本地跨域的的情况&#xff1a; 可以看到&…

如何在数学建模竞赛中稳定拿奖

✅作者简介&#xff1a;人工智能专业本科在读&#xff0c;喜欢计算机与编程&#xff0c;写博客记录自己的学习历程。 &#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&…

[三星电子]算法题--两种颜色涂无向图(bfs)

题目 题目描述&#xff1a; 给一无向图中各个节点绘色&#xff0c;一共只有两种颜色&#xff0c;使其满足相邻节点颜色不同&#xff0c;并输出其中一种颜色的节点个数及序号&#xff1b;如果不满足&#xff0c;则输出-1。 示例&#xff1a; 第一行输入节点个数V和边数E&…

数字信号处理实验---Z变换及系统的零极点分析 Matlab代码

一&#xff0e;各种函数的用法 1.tf2zp函数&#xff1a;通常用于将传递函数&#xff08;Transfer Function&#xff09;转换为零极增益形式&#xff08;ZPK form&#xff09;&#xff0c;转换前G(s) num(s) / den(s)&#xff0c;转换后G(s) K * (s - z1) * (s - z2) * ... *…

freeRTOS总结(四)中断管理

1、什么是中断 打断CPU正常运行程序&#xff0c;转而处理紧急的事件&#xff08;中断服务函数&#xff09;。 中断执行机制3步 1、中断请求 2、响应中断 3、退出中断 2 中断优先级 cortex-M使用8位寄存器配置中断优先级 stm32只用到高4位 stm32优先级分为抢占优先级和子优先…

如何测量电源芯片的电压调整率?电源芯片检测系统助力测试

电源芯片电压调整率的测试方法 测试环境&#xff1a; 温度&#xff1a;252℃ 湿度&#xff1a;60%~70% 大气压强&#xff1a;86kPa~106kPa 测试工具&#xff1a;可调电源、可调电子负载、万用表 测试步骤&#xff1a; 1. 设置电子负载&#xff0c;使电源满载输出; 2. 调节电源芯…

LORA的基本原理

本文将介绍如下内容&#xff1a; 什么是Lora高效微调的基本原理LORA的实现方式LORA为何有效&#xff1f; 一、什么是LoRA LoRA 通常是指低秩分解&#xff08;Low-Rank Decomposition&#xff09;算法&#xff0c;是一种低资源微调大模型方法&#xff0c;论文如下: LoRA: Low…

深入理解计算机系统(1):开始

计算机系统是由硬件和系统软件组成的&#xff0c;它们共同工作来运行应用程序。虽然系统的具体实现方式随着时间不断变化&#xff0c;但是系统内在的概念却没有改变。所有计算机系统都有相似的硬件和软件组件&#xff0c;它们又执行着相似的功能。 计算机系统 信息就是位上下…

C++I/O流——(1)I/O流的概念

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 勤奋&#xff0c;机会&#xff0c;乐观…

Nginx配置反向代理实例二

Mac 安装Nginx教程 Nginx配置反向代理实例一 提醒一下&#xff1a;下面实例讲解是在Mac系统演示的&#xff1b; 反向代理实例二实现的效果 使用nginx 反向代理&#xff0c;根据访问的地址跳转到不同端口的服务中 nginx 监听端口为81&#xff1b; 访问地址1&#xff1a;http:/…

QTday4作业

思维导图: widget.h: #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTime> #include <QTimerEvent> #include <QPushButton> #include <QTextToSpeech> #include <QDebug>namespace Ui { class Widget; }class Widget…

实现稳定的联合显著性检测和联合目标分割

1 Title Toward Stable Co-Saliency Detection and Object Co-Segmentation(Bo Li; Lv Tang; Senyun Kuang; Mofei Song; Shouhong Ding)【IEEE Transactions on Image Processing 2022】 2 Conclusion This paper present a novel model for simultaneous stable co-saliency…

数据分析讲课笔记01:数据分析概述

文章目录 零、学习目标一、本次课程概述二、数据分析的背景&#xff08;一&#xff09;进入大数据时代&#xff08;二&#xff09;数据分析的作用 三、什么是数据分析&#xff08;一&#xff09;数据分析的概念&#xff08;二&#xff09;数据分析的分类1、描述性数据分析2、探…