数据存在的问题

在实际中,我们拿到的数据通常是脏数据,数据可能存在以下几种主要问题:
1.数据缺失 (Incomplete) :属性值为空的情况
2. 数据噪声 (Noisy):数据值不合常理的情况
3. 数据不一致 (Inconsistent):数据前后存在矛盾的情况。如 Age = “42” vs. Birthday = “01/09/1985”
4. 数据冗余 (Redundant):数据量或者属性数目超出数据分析需要的情况。
5. 数据集不均衡 (Imbalance):各个类别的数据量相差悬殊的情况。
6. 离群点/异常值 (Outliers):远离数据集中其余部分的数据。
7. 数据重复(Duplicate):在数据集中出现多次的数据。

1.处理缺失值

缺失值的分类
1.完全随机缺失:指的是数据的缺失是完全随机的;
2.随机缺失:指的是数据的缺失不是完全随机的,和完全变量有关;
3.完全不随机缺失:指的是数据的缺失与不完全变量自身的取值相关; 缺失值会使得系统丢失了大量的有用信息,系统所表现出来的不确定性更加显著,系统中蕴含的确定性成分更难把握,包含空值的不完全变量会使得挖掘过程陷入混乱。
缺失值处理的方法:
(1)均值插补 ;(2)利用同类均值插补;(3)极大似然估计;(4)多重插补;(5)插值法填充;(6)模型填充

2.处理离群值

离群值的判断标准有三种,分别为 MAD、 3σ、百分位法。
异常值的处理方法:
(1)根据异常点的数量和影响,考虑是否将该条记录删除,信息损失多
(2)若对数据做了log-scale 对数变换后消除了异常值,则此方法生效,且不损失信息
(3)平均值或中位数替代异常点,简单高效,信息的损失较少
(4)在训练树模型时,树模型对离群点的鲁棒性较高,无信息损失,不影响模型训练效果

3.属性编码

(1)分箱—特征二元化/多元化
特征二元化的过程是将数值型的属性转换为布尔值的属性,设定一个阈值作为划分属性值为0和1的分隔点。
(2)独热编码(One-HotEncoding)
独热编码采用N位状态寄存器来对N个可能的取值进行编码,每个状态都由独立的寄存器来表示,并且在任意时刻只有其中一位有效。
独热编码的优点:能够处理非数值属性;在一定程度上扩充了特征;编码后的属性是稀疏的,存在大量的零元分量

4.数据标准化

数据标准化是将样本的属性缩放到某个指定的范围,归一化后求优过程范围变小,寻优过程变得平缓,更容易正确收敛到最优解。(之前写的一点小笔记)
常用的有以下两种方式:
1.减均值除方差,得X~N(0,1)

2.减最小值除最大值最小值之差,标准化,对X进行放缩

5.特征选择——降维

常见的特征选择类型分为三类:过滤式(filter)、包裹式(wrapper)、嵌入式(embedding)。常见的降维方法:SVD、PCA、LDA

数据预处理(处理缺失值、属性编码、数据标准化正则化、特征选择、主成分分析)相关推荐

  1. R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充、缺失值标识、离散变量独热onehot编码)、构建出生体重的xgboost模型回归模型

    R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充.缺失值标识.离散变量独热onehot编码).构建出生体重的xgboost模型回归模型 目录

  2. 机器学习数据预处理之缺失值:特征删除

    机器学习数据预处理之缺失值:特征删除 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题之一.当缺失比例很小时,可直接 ...

  3. Python数据分析数据预处理特征值独热编码

    [小白从小学Python.C.Java] [Python-计算机等级考试二级] [Python-数据分析] Python数据分析 数据预处理 特征值独热编码 独热编码,是一种将分类变量转换为若干二进制 ...

  4. 数据预处理之独热编码(One-Hot)

    1.前言 在机器学习算法中,我们经常会遇到分类特征,例如:人的性别有男女,祖国有中国,美国,法国等. 这些特征值并不是连续的,而是离散的,无序的.通常我们需要对其进行特征数字化. 那什么是特征数字化呢 ...

  5. R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行center中心化、scale标准化(每个数据列减去平均值、除以标准差)、设置参数为center和scale

    R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行center中心化.scale标准化(每个数据列减去平均值.除以标准差).设置method参数为center和scal ...

  6. 机器学习数据预处理之缺失值:预测填充(回归模型填充、分类模型填充)

    机器学习数据预处理之缺失值:预测填充(回归模型填充.分类模型填充) garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题 ...

  7. 机器学习数据预处理之缺失值:插值法填充+ lagrange插值+拉格朗日插值

    机器学习数据预处理之缺失值:插值法填充+ lagrange插值+拉格朗日插值 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常 ...

  8. 机器学习数据预处理之缺失值:插值法填充+多项式插值

    机器学习数据预处理之缺失值:插值法填充+多项式插值 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题之一.当缺失比例 ...

  9. 机器学习数据预处理之缺失值:样本删除

    机器学习数据预处理之缺失值:样本删除 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题之一.当缺失比例很小时,可直接 ...

  10. 机器学习数据预处理之缺失值:众数(mode)填充

    机器学习数据预处理之缺失值:众数(mode)填充 garbage in, garbage out. 没有高质量的数据,就没有高质量的数据挖掘结果,数据值缺失是数据分析中经常遇到的问题之一.当缺失比例很 ...

最新文章

  1. sd.js 2.0封装:更加简化请求传参内容
  2. 操作系统安全加固方法
  3. dll可以在linux下使用吗_无需虚拟技术,6步直接在Windows下使用Linux
  4. 【数据结构与算法】之深入解析“删除链表的倒数第N个结点”的求解思路与算法示例
  5. Angular之组件的创建
  6. java实现打印直角三角形
  7. Cloud Toolkit 部署应用到阿里云轻量应用服务器
  8. 从今天开始 好好规划自己
  9. iframe在ios设备宽度不能100%
  10. Julia: Dates =DateFormat, format,parse.......
  11. 【爆赞】这款Python小程序自动抠图只需5秒,秒杀PS手动抠图?
  12. #论文学习#第二篇:CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction
  13. python3 输出 26个大小写英文字母
  14. 区块链基本概念和名词解释
  15. postman接口测试响应体出错显示HTML网页的问题
  16. 作也 努力努力在努力
  17. Java同步技术 (一)
  18. mysql查找操作返回值出现 - [User{id=1, userName='null', date=Sun Sep 16 00:00:00 CST 2018}]
  19. vrf中的ipsec
  20. mysql报错-ERROR 1206 (HY000)- The total number of locks exceeds the lock table size-的解决方法

热门文章

  1. hibernate-mapping的各种属性配置
  2. 苹果Iphone14搭载北斗导航系统,北斗VS GPS有哪些优势?
  3. [转]MTK6515 android打版软件配置
  4. 安装证书后HTTPS无法正常显示的原因有哪些
  5. 《征服C指针》——读书笔记(4)
  6. 三星c1116 android5.0,三星GALAXY K zoom趣味拍照功能体验
  7. 简讯 | 《数智安全与标准化》大作业中期报告
  8. abap 实现F-47过账增强
  9. 【peoplesoft】许可权列表查询SQL
  10. 日文 平假名转换为片假名(用ASCII码转换)