数仓中数据清洗的方法

在数据采集的过程中,需要从不同渠道获取数据并汇集在数仓中,采集的原始数据首先需要进行解析,然后对不准确、不完整、不合理、格式、字符等不规范数据进行过滤清洗,清洗过的数据才能更加符合需求,从而使后续的数据分析应用更为准确。因此在数据分析、挖掘、可视化实现以及统计报表之前,做好相关的数据清洗工作意义重大。

一、数据清洗概述

数据清洗是指对数据进行重新审查和校验的过程中,发现并纠正数据文件中可识别的错误,按照一定的规则把错误或冲突的数据洗掉,包括检查数据一致性,处理无效值和缺失值等,数据清理一般是由计算机而不是人工完成。

图片

二、数据清洗原理

利用数理统计、数据挖掘和预定义清理规则等有关技术将“脏数据”处理掉,从数据源中检测并消除错误、不一致、不完整和重复等数据,为满足要求提供高质量的数据。数据清理的标准模型是将数据输入到数据清理处理器,通过一系列步骤清理数据,然后以期望的格式输出清理过的数据。

图片

三、数据清洗的方法

数据清洗的方法包括:

  1. 处理缺失值;

  2. 删除重复项;

  3. 处理离群值;

  4. 格式和类型转换;

  5. 数据归一化;

  6. 数据集成;

  7. 数据转换;

  8. 数据简化。

以下分别对这8类方法进行介绍。

1. 处理缺失值

处理缺失值:指的是在数据分析过程中处理缺失值(即数据集中缺少的数据)的方法。常通过以下几种方式完成(选择哪种方法取决于缺少的数据量和手头的具体问题),包括:

删除:删除行/列中缺失的值

归纳:用统计数据(均值,中位数,模态)或预测(回归,kNN)填充缺失值

插值:根据其他样本的值估计缺失值

外推:根据趋势预测缺失值

匿名化:掩盖或扰乱缺失的值以保持隐私。

2.删除重复项

删除重复项:指的是识别并消除数据集中重复或冗余的条目。这是数据清理和预处理中的一个重要步骤,可以确保对唯一且准确的数据执行分析。重复可能是由于人为错误、数据输入错误或数据源中的不一致造成的。有几种方法可以删除重复项(方法的选择将取决于数据的具体要求和正在执行的分析),包括:

删除:删除所有重复的行

保留首行:保留重复行的首行数据,并删除其余的行

保留末行:保留重复行的末尾数据,并删除其余的行

自定义:定义一个自定义方法来确定要保留或删除哪些副本。

3.处理异常值

处理异常值:是指识别和处理数据集中与其余数据显著不同的极端值的过程。异常值可能会对数据分析的结果产生重大影响,如果处理不当,可能会使结果发生偏差。处理异常值有几种方法,包括:

移除:移除离群数据点

修剪:只保留指定百分比的数据,丢弃极端值

替换:用更接近其他数据点的指定值替换极端值

归纳:将异常值替换为统计值,例如平均值或中位数

转换:转换数据以减少异常值的影响,例如log-transformation。

方法的选择将取决于数据的具体要求和正在执行的分析。重要的是要考虑异常值对结果的潜在影响,并仔细选择适当的方法来处理它们。

4.格式和类型转换

格式和类型转换:是指将一种数据格式转换为另一种格式或数据类型的过程。例如,将字符串转换为数字,或将数字格式化为特定的字符串形式。

5.数据归一化

数据归一化:是指将数据标准化为具有相同量纲和相对大小关系的数据集。这有助于防止特定数据特征在模型中具有过多影响力,并且提高了模型的稳健性和准确性。常见的数据标准化方法包括Min-Max,Z-Score等。

6.数据集成

数据集成:是指将来自多个来源的数据组合到单个统一视图中的过程。目标是协调数据源之间的差异,消除冗余信息,并提供一致、准确的数据表示。这使组织能够更全面地了解他们的数据,并更好地将其用于决策和分析。

7.数据转换

数据转换:是指将数据从一种格式或结构转换为另一种格式或结构,以使其更适合分析或满足特定要求的过程。此过程涉及到将数据从源格式映射到目标格式,并且通常涉及到操作聚合或在该过程中过滤数据。数据转换的目标是确保数据的一致性、准确性和可用性,并且可以轻松地与其他数据源集成。

8.数据简化

数据简化:是指对数据进行简化或汇总,以减少数据的大小或复杂性,使其更易于管理、分析和可视化的过程。数据缩减的目标是保留最重要和最相关的信息,同时消除冗余或不相关的数据。这可以通过数据压缩、聚合或降维等技术来实现。通过减少数据的大小,组织可以缩短处理时间,使其更容易处理大型数据集。

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

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

相关文章

【数据库】执行计划中二元操作对一趟扫描算法的应用,理解代价评估的应用和优化,除了磁盘代价还有CPU计算代价不容忽略

二元操作的一趟算法 ​专栏内容: 手写数据库toadb 本专栏主要介绍如何从零开发,开发的步骤,以及开发过程中的涉及的原理,遇到的问题等,让大家能跟上并且可以一起开发,让每个需要的人成为参与者。 本专栏会定…

Java中的异常语法知识居然这么好玩!后悔没有早点学习

学习异常后,发现异常的知识是多么的吸引人!不仅可以用来标记错误,还可以自己定义一个异常,用来实现自己想完成的业务逻辑,接下来一起去学习吧 目录 一、异常的概念及体系结构 1.异常的概念 2.异常的体系结构 3.异常…

【数据处理】 -- 【两分钟】了解【最好】的方式 -- 【正则表达式】

直接匹配; 普通字符 元匹配: . 任意单字符 r’表示单引号里字符为其特殊含义,比如.不是句号是匹配符的意思 *任意次数(换行结束) 一次及以上 {3,4}指定次数,至少3次,最多4次|{3}固定4次 [\d.]单个任意…

软件工程简明教程

软件工程简明教程 何为软件工程? 1968 年 NATO(北大西洋公约组织)提出了软件危机(Software crisis)一词。同年,为了解决软件危机问题,“软件工程”的概念诞生了。一门叫做软件工程的学科也就应…

redis运维(二十)redis 的扩展应用 lua(二)

一 redis 的扩展应用 lua redis lua脚本语法 ① 什么是脚本缓存 redis 缓存lua脚本 说明: 重启redis,脚本缓存会丢失 下面讲解 SCRIPT ... 系列 SCRIPT ② LOAD 语法:SCRIPT LOAD lua代码 -->载入一个脚本,只是预加载,不执行思考1&#xff1…

吴恩达《机器学习》10-4-10-5:诊断偏差和方差、正则化和偏差/方差

一、诊断偏差和方差 在机器学习中,诊断偏差和方差是改进模型性能的关键步骤。通过了解这两个概念,能够判断算法的问题究竟是欠拟合还是过拟合,从而有针对性地调整模型。 1. 概念理解 偏差(Bias): 表示模…

《微信小程序开发从入门到实战》学习三十一

3.4 开发参与投票页面 3.4.9 显示投票结果 在实际使用中,一个用户不能对同一个投票进行重复提交,因此需要向服务器端提交投票结果和提交用户ID。另外页面,需要完善。用户提交完投票后 ,还需要显示投票目前的结果,提交…

C#,《小白学程序》第二十课:大数的加法(BigInteger Add)

大数的&#xff08;加减乘除&#xff09;四则运算、阶乘运算。 乘法计算包括小学生算法、Karatsuba和Toom-Cook3算法。 重复了部分 19 课的代码。 1 文本格式 using System; using System.Linq; using System.Text; using System.Collections.Generic; /// <summary>…

字符串函数

目录 读取字符串的函数 1.gets()函数 2.fgets()函数&#xff08;不是所有的编译器都支持例如CodeBlocks&#xff09; 3.scanf()函数 4.getchar()函数 输出字符串的函数 1.puts()函数 2.fputs()函数&#xff08;编译器不一定支持&#xff09; 3.printf()函数 4.putchar…

【开源】基于Vue.js的陕西非物质文化遗产网站

文末获取源码&#xff0c;项目编号&#xff1a; S 065 。 \color{red}{文末获取源码&#xff0c;项目编号&#xff1a;S065。} 文末获取源码&#xff0c;项目编号&#xff1a;S065。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 设计目标2.2 研究内容2.3 研究方法与…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《基于多尺度分量特征学习的用户级超短期负荷预测》

这篇文章的标题表明研究的主题是用户级超短期负荷预测&#xff0c;并且该预测方法基于多尺度分量特征学习。让我们逐步解读这个标题&#xff1a; 用户级&#xff1a; 这表示研究的焦点是在个体用户层面上进行的。负荷预测可能是指电力系统中的负荷&#xff0c;即电力需求。用户…

大模型能否生成搜索引擎的未来?

文&#xff5c;郝 鑫 编&#xff5c;刘雨琦 ChatGPT火爆之前&#xff0c;水面下&#xff0c;也有中国公司也在朝着智能助手的方向努力。夸克便是其中之一。在GPT风靡科技圈后&#xff0c;国内就开始陆续冒出一些大模型厂商。对当时夸克而言&#xff0c;做大模型毋庸置疑&am…

五种多目标优化算法(MOPSO、MOAHA、NSGA2、NSGA3、MOGWO)求解微电网多目标优化调度(MATLAB)

一、多目标优化算法简介 &#xff08;1&#xff09;多目标粒子群优化算法MOPSO 多目标应用&#xff1a;基于多目标粒子群优化算法MOPSO求解微电网多目标优化调度&#xff08;MATLAB代码&#xff09;-CSDN博客 &#xff08;2&#xff09;多目标人工蜂鸟算法&#xff08;MOAHA…

Redis-Redis 高并发分布式锁

集群分布式场景高并发 1.negix配置代理和路由 高并发场景超卖问题 1.使用原生redis控制超卖时(若是商品&#xff0c;则可以将商品id作为锁对象)&#xff0c;会遇到的问题 问题一&#xff1a;若直接使用&#xff1a;将获取锁的对象和设置的超时的时间分开&#xff0c;则不能控…

桥接设计模式

package com.jmj.pattern.bridge;/*** 视频文件(实现化角色)*/ public interface VideoFile {void decode(String fileName); }package com.jmj.pattern.bridge;public class RmvFile implements VideoFile{Overridepublic void decode(String fileName) {System.out.println(&…

论文阅读——MCAN(cvpr2019)

补充一下MCAN-VQA&#xff1a; 对图片的处理&#xff1a;首先输入图片到Faster R-CNN&#xff0c;会先设定一个判断是否检测到物体的阈值&#xff0c;这样动态的生成m∈[10,100]个目标&#xff0c;然后从检测到的对应的区域通过平均池化提取特征。第i个物体特征表示为&#xff…

ubuntu22.04系统下载程序和依赖,并拷贝到指定路径下

脚本1 apt install aptitude apt-get -d install xxx #xxx是待下载的安装包 mv /var/cache/apt/archives/* /home/tuners/1apt install aptitude apt-get -d install xxx mv /var/cache/apt/archives/*.deb /home/tuners/1 xxx 为程序包名称 /home/tuners/1为保存程序包的…

网络通信基础概念介绍

网络通信基础概念介绍 局域网LAN 局域网&#xff0c;即 Local Area Network&#xff0c;简称LAN。 局域网内的主机之间能方便的进行网络通信&#xff0c;又称为内网&#xff1b;局域网和局域网之间在没有连接的情况下&#xff0c;是无法通信的。 局域网是指在一个相对较小的…

微机课设--汇编语言在51单片机上写一个四位十进制加法器

代码如下 KEYVAL EQU 30HKEYTM EQU 31HKEYSCAN EQU 32HDAT EQU 33HSCANLED EQU 37HS_DAT EQU 38HD_DAT EQU 39HR_DATL EQU 3AHR_DATH EQU 3BH CALFLAG EQU 3CHFLAG BIT 00HORG 0000HLJMP MAINORG 000BHLJMP T0ISRORG 0030HMAIN:MOV SP,#5FHMOV TMOD,#01HMOV TH0,#0D8HMOV TL0,…

过渡曲线的构造之平面PH曲线

平面PH曲线的构造及其相应性质 平面PH曲线的构造及其相应性质PH曲线理论三次PH曲线的构造及性质四次PH曲线的构造及性质五次PH曲线的构造及性质非尖点五次PH曲线尖点五次PH曲线 参考文献 平面PH曲线的构造及其相应性质 过渡曲线常需要满足在连接点处位置连续、曲率连续以及切线…