数据清洗
- 格式:doc
- 大小:23.50 KB
- 文档页数:6
数据清洗的方法有哪些数据清洗是指对数据集进行处理,去除不完整、不准确或不相关的数据,以保证数据的质量和准确性。
数据清洗是数据分析的重要步骤,能够提高数据的可靠性和可用性。
下面是常见的数据清洗方法:1. 缺失值处理:- 删除:如果缺失值量很少,可以考虑删除包含缺失值的行或列。
- 填充:可以使用均值、中位数或众数来填充缺失值,也可以使用插值法(如线性插值、拉格朗日插值、样条插值等)来进行填充。
- 插补:可以利用其他相关变量来推测缺失值,如回归模型、随机森林等。
2. 异常值处理:- 删除:如果异常值是由于数据采集或输入错误引起的,可以考虑删除异常值。
- 替换:可以用平均值、中位数或众数来替换异常值,也可以使用插值法或回归模型来进行替换。
- 离群点分析:可以使用箱线图、3σ原则或z-score方法来识别和处理离群点。
3. 重复值处理:- 删除:可以根据某些列的唯一性判断是否存在重复值,并进行删除。
- 标记:可以通过添加标记列来标记重复值。
- 合并:可以将重复值进行合并,计算平均值或其他统计量。
4. 数据类型转换:- 将字符串转换为数值型:可以使用函数将字符串转换为数值型数据。
- 将数值型转换为分类型:可以根据一定规则将连续变量转换为离散变量。
- 日期和时间的处理:可以将日期和时间转换为标准格式,提取年、月、日等信息。
5. 数据格式统一化:- 统一单位:对于含有单位的数据,可以将其单位进行统一,便于后续分析。
- 统一命名规则:对于类似的变量,可以进行命名规则的统一,便于后续的数据处理和分析。
6. 数据合并和拆分:- 合并数据集:可以将多个数据集按照某些列进行合并,扩展数据集的维度。
- 拆分数据集:可以将一个大的数据集拆分成多个小的数据集,便于并行处理或集群计算。
7. 数据采样:- 随机采样:可以随机抽取一部分数据进行分析,得到整体的趋势。
- 分层采样:可以根据某些特征进行分层采样,保证每个层级的样本都被包含在内。
数据清洗常用方法
数据清洗,这可真是个有趣又超级重要的事儿啊!就好像给数据洗个舒服的澡,把它身上的脏东西都洗掉,让它干干净净、清清爽爽的。
你知道吗,数据就像一个大宝藏,但有时候这个宝藏会有点脏兮兮的。
比如说,有重复的数据,就像一件衣服有两个一模一样的,多占地方呀!还有缺失的数据,就像拼图少了一块,让人心里怪别扭的。
那怎么清洗呢?
首先就是处理重复数据啦。
这就好比在一堆苹果里找出那些长得一模一样的,然后把多余的拿走。
我们得用各种巧妙的方法来发现这些重复的家伙,可不能让它们捣乱。
然后是填补缺失数据。
这就像给一个破了洞的衣服补上一块合适的补丁。
我们可以根据其他相关的数据来推测缺失的部分应该是什么,这可需要点智慧和判断力呢!
还有数据的规范化,这就像是把不同形状、不同大小的东西整理得整整齐齐。
让数据都按照统一的标准来,这样用起来才方便呀!
再说说数据的验证,就如同给数据做个严格的体检,看看它是不是健康的、合规的。
要是有问题,赶紧给它纠正过来。
数据清洗不就像是给数据打造一个温馨的家吗?把那些不合适的、不规范的都清理掉,让留下来的数据都能舒舒服服地待着。
这难道不重要吗?没有干净的数据,我们怎么能做出准确的分析和明智的决策呢?所以啊,数据清洗可真是个不能忽视的大工程啊!它能让我们的数据变得更加可靠、更加有价值。
这不就是我们一直追求的吗?让我们都重视起来,好好给数据洗个干净的澡吧!。
数据清洗的常见方法
数据清洗,就像是给数据来一场深度的“清洁SPA”!这可不是一件简单的事儿,里面的门道可多着呢!
你想想,数据就像一群调皮的小精灵,它们有时候会乱跑乱跳,出现各种错误和不一致。
这时候,我们就得想办法把它们抓回来,整理得干干净净、整整齐齐。
比如重复数据,这就好比是同一个小精灵出现了好几次,我们得把多余的它给揪出来。
还有缺失值,就像是小精灵身上掉了一块,得想办法给补上。
数据格式不一致也很让人头疼啊!就像小精灵们穿着五花八门的衣服,我们得让它们统一着装。
这时候,各种方法就闪亮登场啦!
有一种方法叫数据标准化,把那些乱七八糟的数据变得规规矩矩。
就好像把一群野孩子训练成听话的乖宝宝。
还有数据验证,这就像是给小精灵们设置一道关卡,不符合规则的就进不来。
比如说,规定一个数值必须在某个范围内,超出范围的就不行。
数据清理呢,就是把那些明显的错误和垃圾清理掉。
好比把房间里的垃圾都清扫出去,让环境变得清爽。
再说说数据转换,这可神奇了!可以把一种形式的数据变成另一种形式,就像给小精灵施了魔法,让它们变身。
难道数据清洗不是很重要吗?如果数据不干净,那后面的分析和决策不就都乱套啦?所以啊,一定要认真对待数据清洗,就像对待宝贝一样细心呵护。
总之,数据清洗是让数据变得可靠、可用的关键步骤。
我们不能马虎,要用心去做,让我们的数据小精灵们都能健康、快乐地为我们服务!。
数据清洗方法数据清洗是数据预处理的一个重要环节,它是指在进行数据分析前,对数据进行筛选、整理、转换和处理,以确保数据的质量和准确性。
数据清洗的好坏直接影响到最终数据分析的结果,因此选择合适的数据清洗方法至关重要。
下面将介绍一些常用的数据清洗方法,希望能对大家有所帮助。
1. 缺失值处理。
缺失值是指数据中某些字段缺少数值或信息的情况。
在处理缺失值时,可以选择删除缺失值、填充缺失值或使用插值法。
删除缺失值可能会导致数据量减少,填充缺失值可以选择使用均值、中位数、众数等统计量进行填充,插值法可以根据数据的特点选择合适的插值方法进行填充。
2. 异常值处理。
异常值是指在数据中出现的与正常情况不符的数值。
处理异常值的方法包括删除异常值、将异常值替换为缺失值、对异常值进行平滑处理等。
在处理异常值时,需要结合业务背景和数据特点进行分析,选择合适的处理方法。
3. 数据转换。
数据转换是指将原始数据进行规范化、标准化或离散化处理,以便于后续的数据分析和建模。
常见的数据转换方法包括最小-最大标准化、Z-score标准化、对数转换、分段离散化等。
选择合适的数据转换方法可以提高数据的可解释性和建模效果。
4. 数据去重。
数据去重是指在数据中存在重复记录时,对重复记录进行去除的操作。
在进行数据去重时,需要根据业务需求和数据特点选择合适的去重策略,如保留第一次出现的记录、保留最后一次出现的记录、根据某些字段进行去重等。
5. 数据格式统一化。
在实际数据处理中,经常会遇到数据格式不统一的情况,如日期格式、文本格式、数值格式等。
对数据格式进行统一化可以提高数据的一致性和可比性,常见的数据格式统一化方法包括日期格式转换、文本格式清洗、数值格式转换等。
6. 数据标准化。
数据标准化是指将数据按照一定的标准进行缩放,以便于不同变量之间的比较和分析。
常见的数据标准化方法包括最小-最大标准化、Z-score标准化、小数定标标准化等。
以上就是一些常用的数据清洗方法,希望对大家有所帮助。
数据清洗的方法包括哪些
数据清洗的方法包括以下几种:
1. 去除重复值:检查数据中是否有重复的记录,如有重复则将其删除。
2. 缺失值处理:检查数据中是否有缺失值,如有缺失值则需要根据情况进行处理,可以选择删除有缺失值的记录,或者通过插补等方法填补缺失值。
3. 异常值处理:检查数据中是否有异常值,如有异常值则需要进行处理,可以选择删除异常值,或者通过平均值、中位数等方法进行替代。
4. 数据类型转换:根据需要,将数据的格式进行转换,如将字符串转换为数值型、日期型等。
5. 删除不必要的列:根据分析需求,删除对分析无用的列。
6. 数据标准化:对数据进行标准化处理,将不同单位或不同量级的数据转换为相同的标准格式,方便比较和分析。
7. 数据格式统一:对数据进行统一的格式规范,使得数据一致化,方便后续处理。
8. 去除异常字符:去除文本中的无用字符、特殊符号等。
9. 数据归一化:对数据进行归一化处理,将数据缩放到指定的范围内,避免不同量级对数据分析造成的影响。
10. 编码转换:对于包含中文或其他特殊字符的数据,可以进行编码转换,将其转换为可处理的格式。
数据清洗是什么意思1. 引言数据清洗是一个关键的数据处理步骤,它通常是在数据分析和建模之前进行的。
在大多数情况下,原始数据都不是完美的,包含了各种问题和错误。
因此,数据清洗的目的是识别、纠正或删除这些问题,以确保数据的准确性、一致性和可靠性。
2. 数据清洗的重要性数据清洗在数据分析和建模的过程中起着至关重要的作用。
以下是几个数据清洗的重要性:2.1 数据质量数据质量是数据清洗的主要目标之一。
当数据包含错误、缺失值、重复数据或其他问题时,数据质量就会受到影响。
通过数据清洗,可以提高数据质量,减少误差,并增加分析和决策的准确性。
2.2 数据一致性在进行数据分析时,数据的一致性对于得出准确的结论至关重要。
数据清洗可以解决数据不一致的问题,例如不同的表达方式、单位转换和数据格式的统一。
2.3 数据完整性原始数据通常会存在一些缺失值的情况,这可能会影响到后续分析的可靠性。
通过数据清洗,可以填补这些缺失值,使得数据更完整,从而提高分析的可靠性。
2.4 数据标准化在数据分析和建模的过程中,数据通常来自不同的来源,并且可能使用不同的格式和约定。
数据清洗可以对数据进行标准化,以确保数据的一致性和比较的可行性。
3. 数据清洗的步骤数据清洗通常涉及以下几个步骤:3.1 数据审查在数据清洗的开始阶段,需要对原始数据进行审查和评估。
这包括了解数据的结构、内容和相关问题。
3.2 缺失值处理缺失值是指数据中缺少的值。
处理缺失值的方法可以是删除对应的行或列,或者使用合适的方法填充这些缺失值。
3.3 数据去重数据中可能包含重复的记录,这可能会导致分析结果的偏差。
数据去重是指识别和删除重复的数据记录。
3.4 数据格式转换数据可能以不同的格式存储,例如日期、数字或文本。
数据格式转换的目的是将数据转换为统一的格式,以方便后续分析。
3.5 数据异常值处理异常值是指与其他数据不一致的值。
数据异常值处理的目的是识别和处理这些异常值,以避免对后续分析结果的干扰。
数据清洗的方法
1. 去除重复数据:将数据集按照特定列进行排序,然后将相邻行进行比较,如果内容完全一致,则判断为重复数据,可以将其删除或合并为一条数据。
2. 缺失值处理:查找数据集中的缺失值,并根据具体情况进行处理。
可以选择删除缺失值所在的行或列,也可以采取填充、插值等方法进行补充。
3. 异常值处理:检测和处理异常值,可以通过数学统计的方法,如3σ原则或箱线图方法,来判断是否存在异常值,并加以处理,例如替换为合理范围内的值或删除异常值所在的行。
4. 规范化数据:对于不同的数据类型,可以进行单位转换、同一量纲化等处理,以便进行后续的分析和比较。
5. 删除无关数据列:根据实际需求,对数据集中与分析目的无关的列进行删除,在保留有用信息的同时减少冗余。
6. 格式统一化:检查数据集中的文本格式、日期格式等是否统一,如果不统一则进行统一化处理,以提高数据的一致性和可比性。
7. 使用模型进行清洗:可以使用机器学习或数据挖掘算法,如聚类、离群点检测等方法,对数据集进行清洗和预处理,识别并纠正错误数据。
8. 数据转换和重组:根据分析需求,将数据进行转换和重组,例如将长格式转换为宽格式,或进行数据透视表的生成,以便更方便地分析和统计数据。
大数据处理技术之数据清洗引言概述:随着互联网的快速发展和各类数据的爆炸性增长,大数据处理技术成为了解决数据分析和应用中的重要问题。
而数据清洗作为大数据处理技术中的关键环节,对于数据的质量和准确性起着至关重要的作用。
本文将从数据清洗的定义、重要性、常用方法、挑战以及应用案例等五个大点来详细阐述大数据处理技术之数据清洗。
正文内容:1. 数据清洗的定义1.1 数据清洗的概念数据清洗是指在大数据处理过程中,通过对原始数据进行筛选、转换和修正等操作,以去除数据中的噪声、冗余、错误和不一致等问题,从而提高数据的质量和准确性。
1.2 数据清洗的目的数据清洗的目的是确保数据的质量和准确性,以便后续的数据分析和应用能够基于可靠的数据进行。
通过数据清洗,可以减少数据分析过程中的误差和偏差,提高数据分析的可信度和有效性。
2. 数据清洗的重要性2.1 数据质量的影响数据质量是决定数据分析结果准确性的关键因素之一。
不经过数据清洗的原始数据可能存在着各种问题,如缺失值、异常值、重复值等,这些问题会导致数据分析结果的偏差,从而影响决策的准确性。
2.2 数据清洗的效益通过数据清洗,可以提高数据的一致性、完整性和准确性,从而为后续的数据分析和应用提供可靠的数据基础。
数据清洗可以帮助识别和修复数据中的问题,使数据更加可信,减少数据分析过程中的错误和偏差,提高数据分析的效果。
3. 常用的数据清洗方法3.1 缺失值处理缺失值是指数据中某些字段或属性的值缺失或未记录。
常见的缺失值处理方法包括删除缺失值、插值填充和模型预测等。
3.2 异常值检测与处理异常值是指与其他数据明显不符的数值,可能是由于数据采集或记录错误导致的。
常用的异常值检测方法包括基于统计学的方法、基于聚类的方法和基于机器学习的方法等。
3.3 重复值处理重复值是指数据中存在完全相同或非常相似的记录。
常见的重复值处理方法包括删除重复值、合并重复值和标记重复值等。
4. 数据清洗的挑战4.1 大数据量大数据处理中的数据量通常非常庞大,这给数据清洗带来了巨大的挑战。
大数据处理技术之数据清洗在当今信息爆炸的时代,大数据处理技术已经成为各行各业的重要工具。
其中,数据清洗是大数据处理中至关重要的一环。
数据清洗是指将原始数据中的错误、重复、缺失等问题进行识别和修正,以确保数据的准确性和完整性。
本文将从数据清洗的定义、重要性、方法、工具和挑战等方面进行详细介绍。
一、数据清洗的定义1.1 数据清洗是指对原始数据进行识别、修正和删除错误、不完整或无效的数据,以提高数据质量和可靠性。
1.2 数据清洗通常包括数据去重、数据格式化、数据标准化等步骤,以确保数据的一致性和准确性。
1.3 数据清洗是数据预处理的重要环节,对后续数据分析和挖掘工作至关重要。
二、数据清洗的重要性2.1 数据清洗可以提高数据的质量和可靠性,减少因数据错误导致的决策失误。
2.2 数据清洗可以节约时间和成本,避免在后续数据分析中花费大量时间修正错误数据。
2.3 数据清洗可以提高数据的可用性和可信度,为数据分析和挖掘提供可靠的基础。
三、数据清洗的方法3.1 手工清洗:通过人工逐条检查数据,识别和修正错误数据。
3.2 自动清洗:利用数据清洗工具和算法,自动识别和修正数据中的错误。
3.3 混合清洗:结合手工清洗和自动清洗的方法,提高数据清洗的效率和准确性。
四、数据清洗的工具4.1 OpenRefine:一个开源的数据清洗工具,提供丰富的数据清洗功能和插件。
4.2 Trifacta:一款专业的数据清洗工具,支持大规模数据的清洗和转换。
4.3 Talend Data Preparation:一个易于使用的数据清洗工具,适用于各种数据源和格式。
五、数据清洗的挑战5.1 大数据量:大规模数据清洗需要消耗大量的计算资源和时间。
5.2 多样化数据:不同数据源和格式的数据需要不同的清洗方法和工具。
5.3 数据质量评估:如何评估清洗后数据的质量和可靠性是一个挑战。
综上所述,数据清洗是大数据处理中至关重要的一环,通过正确的方法和工具进行数据清洗,可以提高数据的质量和可靠性,为后续的数据分析和挖掘工作奠定良好的基础。
数据清洗方法
数据清洗是数据处理过程中的一项重要任务,通过去除冗余、不一致、重复或错误的数据,提高数据质量和准确性。
以下是一些常用的数据清洗方法:
1. 去除重复数据:查找数据集中重复的记录,并将其删除。
可以使用工具或编程语言的函数来实现。
2. 处理缺失值:检查数据中的缺失值,并决定如何处理。
可以选择删除包含缺失值的记录,或使用合适的插值方法填充缺失值。
3. 格式转换:对数据中的不同格式进行统一,以便后续分析。
例如,将日期格式转换为统一的日期时间格式,将字符串转换为数字等。
4. 异常值处理:检测和处理异常值,这些值可能是由于数据收集或输入错误导致的。
可以根据业务知识或统计方法来处理异常值。
5. 数据类型转换:将数据字段的类型更改为正确的类型。
例如,将字符串转换为日期、将数字转换为分类变量等。
6. 解决不一致性:检查数据中的不一致或不准确的值,并进行修正或删除。
例如,对于性别字段,将不一致的“男”和“M”转
换为统一的“男性”。
7. 删除无关数据:删除对于分析任务无关的列或行,以减少数据集的复杂度和冗余程度。
8. 标准化和归一化:将数据转换为相同的标准或范围,以消除单位或大小的差异,以便进行比较和分析。
9. 数据合并:将多个数据源中的相关数据合并到一个数据集中,以便进行综合分析。
10. 数据采样:从大型数据集中抽取代表性的样本,以减少计
算和分析的复杂度。
以上是一些常用的数据清洗方法,根据具体的数据和分析任务,可以选择合适的方法来清洗数据,提高数据的质量和可用性。
数据清洗的主要包括:纠正错误、删除重复项、统一规格、修正逻辑、转换构造、数据压缩、补足残缺/空值、丢弃数据/变量。
1. 纠正错误错误数据是数据源环境中经常出现的一类问题。
数据错误的形式包括:q 数据值错误:数据直接是错误的,例如超过固定域集、超过极值、拼写错误、属性错误、源错误等。
q 数据类型错误:数据的存储类型不符合实际情况,如日期类型的以数值型存储,时间戳存为字符串等。
q 数据编码错误:数据存储的编码错误,例如将UTF-8写成UTF-80。
q 数据格式错误:数据的存储格式问题,如半角全角字符、中英文字符等。
q 数据异常错误:如数值数据输成全角数字字符、字符串数据后面有一个回车操作、日期越界、数据前后有不可见字符等。
q 依赖冲突:某些数据字段间存储依赖关系,例如城市与邮政编码应该满足对应关系,但可能存在二者不匹配的问题。
q 多值错误:大多数情况下,每个字段存储的是单个值,但也存在一个字段存储多个值的情况,其中有些可能是不符合实际业务规则的。
这类错误产生的原因是业务系统不够健全,尤其是在数据产生之初的校验和入库规则不规范,导致在接收输入后没有进行判断或无法检测而直接写入后台数据库造成的。
2. 删除重复项由于各种原因,数据中可能存在重复记录或重复字段(列),对于这些重复项目(行和列)需要做去重处理。
对于重复项的判断,基本思想是“排序和合并”,先将数据库中的记录按一定规则排序,然后通过比较邻近记录是否相似来检测记录是否重复。
这里面其实包含了两个操作,一是排序,二是计算相似度。
常见的排序算法:q 插入排序q 冒泡排序q 选择排序q 快速排序q 堆排序q 归并排序q 基数排序q 希尔排序常见的判断相似度的算法:q 基本的字段匹配算法q 标准化欧氏距离q 汉明距离q 夹角余弦q 杰卡德距离q 马氏距离q 曼哈顿距离q 闵可夫斯基距离q 欧氏距离q 切比雪夫距离q 相关系数q 信息熵对于重复的数据项,尽量需要经过业务确认并进行整理提取出规则。
在清洗转换阶段,对于重复数据项尽量不要轻易做出删除决策,尤其不能将重要的或有业务意义的数据过滤掉,校验和重复确认的工作必不可少。
3. 统一规格由于数据源系统分散在各个业务线,不同业务线对于数据的要求、理解和规格不同,导致对于同一数据对象描述规格完全不同,因此在清洗过程中需要统一数据规格并将一致性的内容抽象出来。
数据字段的规则大致可以从以下几个方面进行统一:q 名称,对于同一个数据对象的名称首先应该是一致的。
例如对于访问深度这个字段,可能的名称包括访问深度、人均页面浏览量、每访问PV数。
q 类型:同一个数据对象的数据类型必须统一,且表示方法一致。
例如普通日期的类型和时间戳的类型需要区分。
q 单位:对于数值型字段,单位需要统一。
例如万、十万、百万等单位度量。
q 格式:在同一类型下,不同的表示格式也会产生差异。
例如日期中的长日期、短日期、英文、中文、年月日制式和缩写等格式均不一样。
q 长度:同一字段长度必须一致。
q 小数位数:小数位数对于数值型字段尤为重要,尤其当数据量累积较大时会因为位数的不同而产生巨大偏差。
q 计数方法:对于数值型等的千分位、科学计数法等的计数方法的统一。
q 缩写规则:对于常用字段的缩写,例如单位、姓名、日期、月份等的统一。
例如将周一表示为Monday还是Mon还是M。
q 值域:对于离散型和连续型的变量都应该根据业务规则进行统一的值域约束。
q 约束:是否允许控制、唯一性、外键约束、主键等的统一。
统一数据规格的过程中,需要重要的一点是确认不同业务线带来数据的规格一致性,这需要业务部门的参与、讨论和确认,以明确不同体系数据的统一标准。
4. 修正逻辑在多数据源的环境下,很可能存在数据异常或冲突的问题。
例如不同的数据源对于订单数量的数据统计冲突问题,结果出现矛盾的记录。
通常,这是由于不同系统对于同一个数据对象的统计逻辑不同而造成的,逻辑的不一致会直接导致结果的差异性;除了统计逻辑和口径的差异,也有因为源数据系统基于性能的考虑,放弃了外键约束,从而导致数据不一致的结果;另外,也存在极小的数据丢失的可能性,通常由于并发量和负载过高、服务器延迟甚至宕机等原因导致的数据采集的差异。
对于这类的数据矛盾,首先需要明确各个源系统的逻辑、条件、口径,然后定义一套符合各个系统采集逻辑的规则,并对异常源系统的采集逻辑进行修正。
某些情况下,也可能存在业务规则的错误导致的数据采集的错误,此时需要从源头纠正错误的采集逻辑,然后再进行数据清洗和转换。
5. 转换构造数据变换是数据清理过程的重要步骤,是对数据的一个的标准的处理,几乎所有的数据处理过程都会涉及该步骤。
数据转换常见的内容包括:数据类型转换、数据语义转换、数据值域转换、数据粒度转换、表/数据拆分、行列转换、数据离散化、数据离散化、提炼新字段、属性构造、数据压缩等。
数据类型转换当数据来自不同数据源时,不同类型的数据源数据类型不兼容可能导致系统报错。
这时需要将不同数据源的数据类型进行统一转换为一种兼容的数据类型。
数据语义转换传统数据仓库中基于第三范式可能存在维度表、事实表等,此时在事实表中会有很多字段需要结合维度表才能进行语义上的解析。
例如,假如字段M的业务含义是浏览器类型,其取值分为是1/2/3/4/5,这5个数字如果不加转换则很难理解为业务语言,更无法在后期被解读和应用。
数据粒度转换业务系统一般存储的是明细数据,有些系统甚至存储的是基于时间戳的数据,而数据仓库中的数据是用来分析的,不需要非常明细的数据,一般情况下,会将业务系统数据按照数据仓库中不同的粒度需求进行聚合。
表/数据拆分某些字段可能存储多中数据信息,例如时间戳中包含了年、月、日、小时、分、秒等信息,有些规则中需要将其中部分或者全部时间属性进行拆分,以此来满足多粒度下的数据聚合需求。
同样的,一个表内的多个字段,也可能存在表字段拆分的情况。
行列转换某些情况下,表内的行列数据会需要进行转换(又称为转置),例如协同过滤的计算之前,user和term之间的关系即互为行列并且可相互转换,可用来满足基于项目和基于用户的相似度推荐计算。
数据离散化将连续取值的属性离散化成若干区间,来帮助消减一个连续属性的取值个数。
例如对于收入这个字段,为了便于做统计,根据业务经验可能分为几个不同的区间:0~3000、3001~5000、5001~10000、10001~30000、大于30000,或者在此基础上分别用1、2、3、4、5来表示。
数据标准化不同字段间由于字段本身的业务含义不同,有些时间需要消除变量之间不同数量级造成的数值之间的悬殊差异。
例如将销售额进行离散化处理,以消除不同销售额之间由于量级关系导致的无法进行多列的复合计算。
数据标准化过程还可以用来解决个别数值较高的属性对聚类结果的影响。
提炼新字段很多情况下,需要基于业务规则提取新的字段,这些字段也称为复合字段。
这些字段通常都是基于单一字段产生,但需要进行复合运算甚至复杂算法模型才能得到新的指标。
属性构造有些建模过程中,也会需要根据已有的属性集构造新的属性。
例如,几乎所有的机器学习都会讲样本分为训练集、测试集、验证集三类,那么数据集的分类(或者叫分区)就属于需要新构建的属性,用户做机器学习不同阶段的样本使用。
提示在某些场景中,也存在一些特殊转换方法。
例如在机器学习中,有些值是离散型的数据但存在一定意义,例如最高学历这个字段中包含博士、研究生、大学、高中这4个值,某些算法不支持直接对文本进行计算,此时需要将学历这个字段进行转换。
常见的方法是将值域集中的每个值拆解为一个字段,每个字段取值为0或1(布尔型或数值型)。
这时,就会出现4个新的字段,对于一条记录来看(通常是一个人),其最高学历只能满足一个,例如字段博士为1,那么其余的字段(研究生、大学、高中)则为0。
因此这个过程实际上是将1个字段根据值域(4个值的集合)拆解为4个字段。
6. 数据压缩数据压缩是指在保持原有数据集的完整性和准确性,不丢失有用信息的前提下,按照一定的算法和方式对数据进行重新组织的一种技术方法。
对大规模的数据进行复杂的数据分析与数据计算通常需要耗费大量时间,所以在这之前需要进行数据的约减和压缩,减小数据规模,而且还可能面临交互式的数据挖掘,根据数据挖掘前后对比对数据进行信息反馈。
这样在精简数据集上进行数据挖掘显然效率更高,并且挖掘出来的结果与使用原有数据集所获得结果基本相同。
数据压缩的意义不止体现在数据计算过程中,还有利于减少存储空间,提高其传输、存储和处理效率,减少数据的冗余和存储的空间,这对于底层大数据平台具有非常重要的意义。
数据压缩有多种方式可供选择:q 数据聚合:将数据聚合后使用,例如如果汇总全部数据,那么基于更粗粒度的数据更加便利。
q 维度约减:通过相关分析手动消除多余属性,使得参与计算的维度(字段)减少;也可以使用主成分分析、因子分析等进行维度聚合,得到的同样是更少的参与计算的数据维度。
q 数据块消减:利用聚类或参数模型替代原有数据,这种方式常见于多个模型综合进行机器学习和数据挖掘。
q 数据压缩:数据压缩包括无损压缩和有损压缩两种类型。
数据压缩常用于磁盘文件、视频、音频、图像等。
7. 补足残缺/空值由于各种主客观原因,很多系统存在残缺数据,残缺数据包含行缺失、列缺失、字段缺失三种情况。
行缺失指的是丢失了一整条数据记录,列缺失指的是丢失一整列数据,字段缺失指的是字段中的值为空值。
其中空值也分两种情况:q 缺失值。
缺失值指的是的数据原本是必须存在的,但实际上没有数据。
例如年龄这个字段每个人都会有,所以如果系统强制验证是不应该为空。
q 空值。
空值指的是实际存在可能为空的情况,所以空值不一定是数据问题。
例如身份证号这个字段,只有成人之后才有这个字符串,因此也可能存在非成人的用户,所以可能为空。
对于缺失值和空值的填充处理主要包含两种方式:一是手工填入可能的值;二是利用规则填充可能的值:某些缺失值可以从本数据源或其它数据源推导出来,这就可以用数据分布的状态和特征,使用众数、中位数、平均值、最大值、最小值填充,或者使用近邻分析甚至更为复杂的概率估计代替缺失的值,从而达到填充的目的,某些情况下也可以直接以未知或unknown填充,这是一种先期不处理而等到后期业务在处理数据的时候再处理的方法。
提示对缺失数据进行填补后,填入的值可能不正确,数据可能会存在偏置,导致数据并不是十分可靠的。
除了明显的可以确定的规则来填充值以外,基于已有属性来预测缺失值是一种流行的方法。
假如性别字段部分记录为空,可以将性别字段作为目标变量进行建模分析,对完整样本建模后得出缺失数据性别为男、女的概率,然后进行填充。
对于更多的不确定值的数据样本,如果不影响整体计算逻辑的,建议先保持原样;如果会成为计算和建模噪音的数据,则可以采取上述方法进行处理,尽量使其在建模过程的作用消减。