【数据清洗】总结

2023-05-16

写在前面(201908):
数据质量问题往往会影响到工作效果,我们学习现代工具后,很容易就建立起一个初步的模型。但是真正的工作是如何优化它,而关键节点就包括数据的清洗和模型的调优。就好比想要做一道好菜,就需要好的原材料和好的制作手法。而不同的数据处理方法,也跟模型的需要息息相关。因此理解模型对数据的要求也是对做好一道菜的必要知识点。

这里先参考相关材料,记录下常规的数据清洗方法,并持续更新。

内容:
1、数据探索和准备步骤
2、缺失值处理

1、数据探索和准备步骤
1)变量确认
首先,确认因变量(目标变量)和自变量。
然后确认数据的类型,是字符型还是数字型。
最后确定数据的类别,是分类数据还是连续数据。

2)单变量分析
针对每个变量进行分析,分析变量的数字特征。
连续变量:了解变量的集中趋势(均值、众数、中位数、最大值、最小值)、分布情况(范围、四分位距IQR、方差、标准差、峰度、偏度)、可视化(直方图、箱型图)。
分类变量:各类别的频次、频率、条形图

3)双变量分析
寻找变量之间的关系。连续变量和分类变量共有三种组合情况,均有对应的方法进行分析。
(1)两个连续变量:使用散点图初步查看变量关系,利用相关系数计算相关性。
相关系数:Correlation = Covariance(X,Y) / SQRT( Var(X)* Var(Y))
(2)两个分类变量:
使用联合分布图,显示频次和比例;
使用堆积柱形图可视化呈现内容;
利用卡方检验进行分析,卡方检验是基于预期和观察频次的分析,它返回具有自由度的卡方分布的概率。理论上若H0成立,则预期和观察的相似,卡方值越小,否则卡方值越大。与P值的对应关系可以查表,P值一般小于0.05则不拒绝H0。
(3)分类变量与连续变量
Z-Test/T-Test:如果Z统计量的概率较小,则两个变量的均值较为显著。T检验相似,但是适用于观察数小于三十的情况。
方差分析:计算两个以上的群组的均值是否有统计学上的区别。

4)缺失值处理
缺失值会影响模型效果,因此需要进行处理。
(1)删除。删除缺少变量的观察。 优点是简单,但减少样本量所以降低了模型的功效。但只有在缺失值是随机缺失的情况下,才会使用删除法,否则会导致模型产生偏差(比如男性全缺失)。
(2)均值、众数、中位数填充。是最常用的填充方法,定量常用(均值、中位数)、定性常用(众数)。
(3)预测模型。以缺失变量作为目标变量,按是否缺失将数据拆分成两组,利用回归分析、方差分析等模型进行预测缺失值。但是有两个缺点,一是预测出来的值比真实值表现得更好,二是如果变量间关联性较低则会导致模型预测不准确。
(4)KNN估计。利用相似属性进行预测,使用距离函数进行计算。优点是能预测定性和定量数据、不需要为每个缺失变量建立模型、变量缺失较多也能被填充、考虑了数据的结构相似性。缺点是计算时间长、K值的选择较为重要(较大会包含无关属性而较小会忽略相关属性)。

5)异常值处理
(1)通常会选择忽略异常值,但是这样会导致模型效果产生偏差、准确性降低。因此需要对异常值进行处理。
异常值有单变量异常值和多变量异常值,多变量异常值在n维上才能发现。
异常值发生的原因很多,输入错误、度量错误、试验错误、故意错误、传输错误、样本错误、自然错误。
异常值会导致方差的变大、降低分布水平、影响预估准确度。
(2)如何检测异常值:
(2.1)-1.5 x IQR to 1.5 x IQR范围以外
(2.2)小于5%和超过95%的数值
(2.3)3个方差范围以外的数值
(2.4)对于二元或多元,一般使用影响力指数等方法检测。常用马哈拉诺比斯距离和库克D( Mahalanobis’ distance and Cook’s D )等方法。
(2.5)SAS可以使用 PROC Univariate, PROC SGPLOT.方法。
(3)如何处理异常值?
删除、转化、分组、替换、单独分析等方法进行处理。
(3.1)如果是输入错误,或者处理错误,或者异常值数量很少,可以删除异常值。
(3.2)可以进行log操作对数据进行转化。也可以对数据进行分组(如大于100的为同一个级组),可用于决策树算法。
(3.3)可以用中位数、众数、均值的方法进行替换。也可以使用模型对异常值进行预测并替换。
(3.4)如果是比较典型的异常值,可以分开单独分析。如做分别做模型分析,然后合并输出报告。

6)特征工程
对数据进行处理使得它更有效。
(1)数据转化:例如对变量进行平方、立方或取对数的方法进行替换,就会改变变量分布或者与其它变量的关系。
(2)什么时候需要做特征工程呢?
(2.1)当需要改变数据范围,或者对数值进行标准化以便更好地解释时,就需要数据转化。
(2.2)或当我们想要将非线性关系转换为线性关系时(可以使用散点图进行观察)。取对数是最常用的方法之一。
(2.3)对称分布由于偏斜分布,因为更容易解释和生成推论。一些模型也需要正态分布变量。对右偏分布一般采取开平方根、开立方根、取对数的方法,对左偏分布一般采取平方、立方和取e指数的方法。
(2.4)直接使用数据可能存在困难,比如直接用年龄进行分析可能效果不佳,因此可以对年龄层进行分组。

(2)常用的数据转化技术。
(2.1)对数:变量的对数是一种常用的变换方法,用于在分布图上更改变量的分布形状。 它通常用于减少变量的右偏度。 但是,它也不能应用于零值或负值。
(2.2)开平方根/立方体根: 开根可能会对变量分布产生影响。但立方根可以应用于包括零的负值。 平方根可以应用于包括零的正值。
(2.3)分组(分类):用于对变量进行分类。 它是在原始值,百分位数或频率上执行的。 分类技术的决定基于业务理解。 例如,我们可以将收入分为三类,即:高,平均和低。

7)特征创造
基于现有的变量生成新的变量或特征。比如日期可以拆分为年、月、日等与目标变量有更好关系的值。
(1)创建派生变量:这是指使用一组函数或不同方法从现有变量创建新变量。 比如变量age具有缺失值。 为了预测缺失值,我们使用名称的称呼(Master,Mr,Miss,Mrs)作为新变量。 我们如何决定创建哪个变量? 这取决于对分析师的商业理解。 取对数、分组变量和其他变量变换方法等方法也可用于创建新变量。
(2)创建虚拟变量:虚拟变量最常见的应用之一是将分类变量转换为数值变量。 虚拟变量也称为指标变量。 将分类变量作为统计模型中的预测变量是有用的。 分类变量可以取值0和1.让我们采用变量“性别”。 我们可以产生两个变量,即值为1(男性)和0(无男性)的“Var_Male”和值为1(女性)和0(无女性)的“Var_Female”。 我们还可以为具有n或n-1个虚拟变量的分类变量的两个以上类创建虚拟变量。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【数据清洗】总结 的相关文章

  • SQL数据分析之数据提取、数据查询、数据清洗【MySQL速查】

    文章目录 一 数据提取二 数据查询1 选取数据 xff08 select xff09 2 筛选 xff08 where xff09 3 范围匹配 xff08 IN xff09 4 排序 xff08 order by xff09 5 条件筛选
  • 数据分析----数据清洗

    文章目录 前言一 数据清洗是什么 xff1f 二 步骤1 选择列2 缺失值处理1 找到缺失值2 处理缺失值的方法 3 数据类型转化4 重复值处理 总结 前言 随着科技的不断发展 xff0c 数据在我们生活中越来越多 xff0c 面对繁杂的数
  • excel数据清洗_数据清洗步骤

    首先这是数据清洗步骤的思维导图 数据清洗步骤 步骤一 选择子集 在办公中 xff0c 经常会碰到excel表格中存在大量列 xff0c 但有一些列 xff0c 可能是近期不在使用 xff0c 就是暂时不在使用的 xff0c 为了更好的突出重
  • 十三、数据清洗

    1 清洗数据 数据清洗是指发现并纠正数据文件中可识别的错误的最后一道程序 xff0c 包括检查数据一致性 xff0c 处理无效值和缺失值等 xff1a 缺失值处理 xff1b 噪声数据处理 xff1b 不一致数据的处理 xff1b 清洗数据
  • 【数据清洗】总结

    写在前面 xff08 201908 xff09 xff1a 数据质量问题往往会影响到工作效果 xff0c 我们学习现代工具后 xff0c 很容易就建立起一个初步的模型 但是真正的工作是如何优化它 xff0c 而关键节点就包括数据的清洗和模型
  • 数据清洗

    1 概念 数据清洗 xff1a 把脏数据清洗掉 xff0c 提高数据质量 Data cleansing Data cleaning Data scrubbing三种表达方式都可以 xff0c 意思都是检测和去除数据集中的噪声数据和无关数据
  • python 按照行取平均值补齐缺失数据

    import pandas as pd 根据行来求平均值 def fill NAN filePath r E study python 0819 filled meter 500 csv df0 pd read csv filePath e
  • 数据清洗遇到的问题思考

    因为本次任务是基础的数据预处理和数据集划分 所以本次讨论不涉及特征工程和模型相关的 问题一 缺失数据 有很多人问到了缺失值处理的问题 统一汇总提问 为什么需要处理缺失值 确实值会影响模型训练 某些特征值确实 有可能使得该条样本完全是负样本
  • Python之Pandas绘图

    Pandas绘图
  • Python将纵向数据进行分组之后横向转化

    那天也是在某个公司进行了面试 面试官出了一个题 将下面的这个表格的数据进行转化 转变形式为这种 OK 我承认 我当时感觉特别的紧张 直接不知道代码怎么去写 面试的时候我还是想了一种方法 我说我会新建两个字典来分别存储brand和produc
  • 数据清洗:由坐标数据构成的轨迹去除漂移点的操作

    版权声明 转载请注明作者 独孤尚良dugushangliang 出处 https blog csdn net dugushangliang article details 102821219 先看看我们要处理的数据 首先根据点的经纬度数值
  • Matplotlib绘图的基本操作

    Matplotlib绘图
  • 数据清洗有哪些方法?

    随着大数据时代的发展 越来越多的人开始投身于大数据分析行业 当我们进行大数据分析时 我们经常听到熟悉的行业词 如数据分析 数据挖掘 数据可视化等 然而 虽然一个行业词的知名度不如前几个词 但它的重要性相当于前几个词 即数据清洗 顾名思义 数
  • 数据清洗:Numpy基本操作

    Numpy介绍与应用
  • 数据挖掘而之数据清洗

    数据清洗 是整个数据分析过程中不可缺少的一个环节 其结果质量直接关系到模型效果和最终结论 在实际操作中 数据清洗通常会占据分析过程的50 80 的时间 国外有些学术机构会专门研究如何做数据清洗 相关的书籍也不少 美亚搜data cleani
  • 千万级数据清洗ETL设计方案

    千万级数据清洗项目分析总结 项目简介 一 需求分析 1 前期需求 2 中期需求 3 后期需求 二 技术支持 1 MySQL 2 Redis 三 框架设计 1 流线型代码 2 工厂模式 四 调式工作 1 线上测试 五 问题回顾 1 Mysql
  • 【数据挖掘】数据清洗

    数据挖掘 数据清洗 数据挖掘一般流程 数据挖掘一般流程 需求分析 数据挖掘任务分类 1 预测 分类 回归 2 聚类 文档归类 3 关联性分析 购物篮分析 4 异常检测 信用卡欺诈 获取数据 sql linux 爬虫 数据清洗 主要 去重 缺
  • 数据清洗基础—Kettle 数据转换与清洗、数据抽取操作

    实验一 数据清洗基础 Kettle 数据转换与清洗 数据抽取操作 1 实验题目 Kettle 数据转换与清洗 数据抽取操作 2实验目和要求 2 1熟悉 Kettle 的开发环境 并掌握 Kettle 环境的配置与安装 2 2能使用 Kett
  • kettle(一)kettle介绍

    kettle介绍及组成 一 kettle 是什么 kettle 是一个ETL工具 ETL Extract Transform Load 数据抽取 转换 装载 kettle 是java编写 绿色无需安装 抽取高效稳定 kettle 主要用来对
  • 数据清洗---数据整合

    数据整合可以使用Pandas库中merge 函数合并数据集 import pandas as pd 建两个数据集 df1 DataFrame lkey b b a c data1 range 4 df2 DataFrame rkey a b

随机推荐

  • 论文笔记:Diffusion-Convolutional Neural Networks (传播-卷积神经网络)

    Diffusion Convolutional Neural Networks xff08 传播 卷积神经网络 xff09 2018 04 09 21 59 02 1 Abstract 我们提出传播 卷积神经网络 xff08 DCNNs x
  • JavaEE——CSS3选择器

    声明 xff1a 本栏目所使用的素材都是凯哥学堂VIP学员所写 xff0c 学员有权匿名 xff0c 对文章有最终解释权 xff1b 凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记 CSS3选择器 选择器中的属性 xff1a 之前介绍过
  • vscode 调试 webpack

    在vscode生成的launch json配置文件 span class token punctuation span span class token string 34 version 34 span span class token
  • CentOS8安装

    文章目录 下载镜像安装CentOS8总结参考文档 下载镜像 国内有很多镜像站都可以下载到阿里镜像站或者网易镜像站等 这里使用的是网易镜像站链接 xff1a http mirrors 163 com centos 安装CentOS8 注意 x
  • prometheus基于文件的服务发现

    prometheus基于文件的服务发现 prometheus配置文件如下 xff1a span class token key atrule global span span class token punctuation span spa
  • MySQL8.0自定义表空间

    文章目录 MySQL8 0自定义表空间语法创建表空间语法修改表空间语法 示例参考文档 MySQL8 0自定义表空间 从MySQL 8 0开始允许用户自定义表空间 xff0c 不同表的表空间可以设置使用不同磁盘 xff0c 可以做到冷热数据的
  • SSH远程Ulimit不生效

    SSH远程Ulimit不生效 问题描述 操作系统 etc security limits conf文件内容如下 xff1a soft memlock unlimited hard memlock unlimited 使用远程连接工具moba
  • 常见加密算法及常见加密算法原理

    加密算法和协议 对称加密 简介 xff1a 加密和解密使用同一个密钥 常见的算法 xff1a DES xff1a Data Encryption Standard 3DES xff1a Triple DES AES xff1a Advanc
  • Zabbix利用SNMP方式监控

    SNMP简介 简单网络管理协议 xff08 SNMP xff0c Simple Network Management Protocol xff09 构成了互联网工程工作小组 xff08 IETF xff0c Internet Enginee
  • Ansible 利用copy模块复制多个文件

    今天写了一个Ansible自动化安装mysql的脚本 xff0c 用copy模块复制多个文件的时候格式总是出错 错误的内容是格式不对 xff0c 语法有问题 最后通过查看文档解决了 中文文档的循环部分的章节 xff1a http www a
  • xtrabackup恢复单表

    在一般生产环境下可能会删表 xff0c 这时候如果基于数据库恢复 xff0c 然后再把那个表恢复过来 xff0c 就比较麻烦 xff0c 这里提供一个基于物理备份直接恢复单表的方法 在innodb引擎设置独立表空间 xff0c 一般表对应的
  • Linux也支持远程桌面,看来是孤陋寡闻了。

    Linux也支持远程桌面 xff0c 看来是孤陋寡闻了 最近在学习树霉派 xff0c 一个超牛比的东西 xff0c 只有信用卡片般大小 xff0c 却是麻雀虽小 xff0c 五脏俱全 xff0c 里面装了Linux系统 xff0c 又不带显
  • MGR基本使用

    第一章 xff1a MGR介绍 MGR MySQL Group Replication 是一个MySQL Server插件 xff0c 可用于创建弹性 xff0c 高可用MySQL集群方案 有一个内置的组成员服务 xff0c 在任何给定的时
  • MySQL5.7安装半同步插件报错,错误码1126

    MySQL5 7安装半同步插件报错 xff0c 错误码1126 mysql gt INSTALL PLUGIN rpl semi sync master SONAME 39 semisync master so 39 ERROR 1126
  • apollo ros联合编译进度及问题

    0 进度 xff1a cyber base 全是头文件 xff0c 做成INTERFACE 库 xff0c cyber base cyber common xff1a 先分开构建 xff0c 最后合成cyber common库 cyber
  • lvm热更换磁盘

    lvm热更换磁盘 由于更换存储或者磁盘等问题 xff0c 需要将lvm里面的某个磁盘替换出来回收 xff0c 采用热回收的方法 xff0c 可以在线迁移数据 xff0c 不影响业务使用 xff0c 当然会对磁盘的io造成影响 xff0c 建
  • svn常见问题,报错,命令转载

    我自己犯过的一个错误是 xff1a svn MyERP core Main svn act b8bd621b c193 4969 b66c d35f11009815 后来证实是地址的大小写问题 xff0c 我修改了大小写 xff0c 然后删
  • Hadoop2-MapReduce(2)

    新的API xff1a Mapper MyMapper extends Mapper lt gt map LongWritable key Text value Context context throws context write ne
  • Keil生成bin文件绝对路径,U盘SD卡根目录

    使用U盘或者SD卡更新固件 xff0c 手动操作bin文件很麻烦 xff0c 可以使用keil自带快捷命令 比如U盘符是F盘 fromelf exe bin output 61 F 64 L bin L 编译时候自动生成替换
  • 【数据清洗】总结

    写在前面 xff08 201908 xff09 xff1a 数据质量问题往往会影响到工作效果 xff0c 我们学习现代工具后 xff0c 很容易就建立起一个初步的模型 但是真正的工作是如何优化它 xff0c 而关键节点就包括数据的清洗和模型