智客公社
标题:
干货分享!数据发掘,为什么需求数据预处理
[打印本页]
作者:
水芙蓉1987
时间:
2019-12-6 12:07
标题:
干货分享!数据发掘,为什么需求数据预处理
在《
数据分析的高级运用,是时分搞懂数据发掘了
》一文中,为大家详细引见了数据发掘的商业价值,但是质量不高的数据会直接影响发掘结果,能够导致得出错误的商业结论。
跨行业数据发掘标准流程(CRISP-DM)把残缺的数据发掘过程定义为六个标准阶段,分别是业务了解、数据了解、数据预备、创建模型、模型评价和模型运用。
[attach]274353[/attach]
其中,数据预备是数据发掘流程中的一个重要环节。详细工作次要包括清算、规约、转换、抽样等一系列的预处理工作,提高数据的质量,使得数据发掘算法可以更高效的执行以及获得愈加有效的结果。
为什么要预处理数据
有些小伙伴能够会问,我的数据有现成的,为什么还要预处理数据,不能直接拿来停止数据发掘吗?回答是,当然能。但是,理想往往是残酷的!
1. 理想世界的数据是肮脏的(不残缺,含噪声,不分歧)。
[attach]274354[/attach]
2. 没有高质量的数据,就没有高质量的发掘结果。
[attach]274355[/attach]
3. 原始数据中存在很多成绩,
不分歧 :数据外部出现不分歧状况不正确:输入的数据不符合字段的有效值不准确:数据能够是正确的,但是不准确反复数据:反复输入的数据不残缺 :感兴味的属性值没有含噪声:数据中存在着错误、或异常(偏离希冀值)的数据高维度:存在信息冗余的多个属性。违犯业务规则:例如起始日期大于截止日期等状况
[attach]274356[/attach]
有哪些数据预处理方法
常用的数据预处理方法可以归纳为四个方面。
1、数据清算
缺失值处理:
数据中的缺失值会影响发掘的正常停止,形成发掘结果不正确。对较大比例的缺失值可以停止忽略处理,大批的缺失值可以采用最大、最小、均值、中位数、自定义表达式等方式停止填充。
数据集成与过滤:
用于去除冗余数据、停止反复值检测、编码分歧性、数据分歧性等。
2、数据规约
维规约:
减少所思索的随机变量或属性的个数(主成分分析PCA)。例如,一个汽车数据的样本,外面既有“千米/每小时”的速度特征,也有“英里/小时”的速度特征,显然有一个多余,需求消弭冗余的特征。
数量规约和紧缩:
用替代的、较小的数据表示方式交换原数据。例如,不同年份的数据特征基本一样,可以只保留一个年份的数据停止发掘。
3、数据变换
属性构造:
从给定属性构造新的属性,或者将属性类别停止变换,辅助数据发掘过程。例如根据月支出和奖金等属性可以构造出年支出,便于用来预测年支出。
归一化:
将不同度量方式的数据放在同一个度量体系中停止比较。比如经过min-max标准化方法来求某个字段A的新值,然后停止比较分析。归一化是为了后面数据发掘算法的方便,保正程序运转时收敛加快,提高发掘的精度。
标准化:
数据的标准化是将数据按比例缩放,使之落入一个小的特定区间。可以经过z-score方法对原始数据的均值(mean)和标准差(standard deviation)停止数据的标准化,同时不改变原始数据的分布。在某些比较和评价的目的处理中常常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的目的可以停止比较和加权。
团圆化:
也叫分箱,将数值属性的原始值用区间标签或概念标签停止交换。如年支出数据,可以经过2-3W、3-5W等区间符号标识,也可以用高支出、中等支出、低支出停止团圆化。
4、数据抽样
经过数据抽样来减少用于发掘的数据量或者从一个大型数据集中提取大小固定的样本。
随机抽样:
按一定比例或者固定行数从总体中随机的抽取样本。
分层抽样:
将总体数据分成若干组或者分层,然后从分层中按比例或者固定个数抽取样本。假如数据按层分布的特征比较分明,可以采用分层抽样,减少随机抽样形成的信息丢失。
如何停止数据预处理
停止数据预处理的普通流程为:
[attach]274357[/attach]
我们在网上找到了泰坦尼克乘客数据集(该数据集被评为五大最合适数据分析练手项目之一),想对该数据集停止乘客能否存活的分类发掘,下期为大家引见。
这次将为大家引见如何
应用豌豆DM工具的可视化数据探求和预处理功能,提高泰坦尼克乘客数据集的质量
,便于后续的发掘。
[attach]274358[/attach]
上图是泰坦尼克乘客数据集导入后的一切字段,可以看到数据集有12个字段(特征),除了Survived(表示能否获救)外,其他是乘客的信息,为方便辨认,我们应用豌豆DM为每个字段加了中文标题。
第一步:数据探求
豌豆DM数据探求
提供图表与图形协助了解数据集统计信息
。
[attach]274359[/attach]
泰坦尼克乘客数据集一共有891条记录,其中Age,Cabin和Embarked三个字段有缺失值,为了准确的发掘,该数据集有下面几个成绩需求处理:
缺失值字段的处理
Cabin字段缺失值占比太高,后续不归入数据发掘过程。Age字段缺失值较少,且数据呈正态分布,思索用平均值填充缺失值。
字段团圆化
要按年龄段分析获救人员状况,需求要将Age字段按年龄段分组为少年儿童、中青年、老年人。
值交换
要停止分析的Survived字段用1和0分别表示能否获救,不够直观,需求交换为更为直观的 Yes和No。
第二步:数据处理
豌豆DM提供了一些
简便易懂的可视化数据预处理方式,
可以完成不同的数据预处理工作。
[attach]274360[/attach]
先用WonderDM创建一个自定义数据集,在这个新数据集上进入”数据预处理”,经过“添加操作”菜单,添加需求的数据预处理操作。
1、设置数据源,选择创建的titanic数据集对应的表。
[attach]274361[/attach]
2、添加“值交换”,将Age字段空值交换为平均值。
3、 添加“团圆化”,对Age字段团圆化,分为三个年龄段,团圆化后的字段名为AGE_GRP。
[attach]274362[/attach]
4、 团圆化后的AGE_GRP字段值不直观,则添加“值交换”进一步交换为“少年儿童”,“中青年”,“老年”。
[attach]274363[/attach]
5、将Survived字段值交换为Yes和No。由于原字段是逻辑型,需添加一个字符型字段存放Yes和No,在界面上添加一个“添加字段”,输入相应的转换表达式。
[attach]274364[/attach]
最后,一份残缺的数据预处理过程列表见下图,豌豆DM还提供拖拽操作,调整各项操作的执行顺序,用户可点击主界面上的“运转”按钮末尾数据预处理工作。
[attach]274365[/attach]
最终处理好的数据集如下图所示,Age字段空值采用了平均值填充,团圆化后的字段AGE_GRP采用了明白的年龄分组信息,IS_SURVIVED分别用Yes和No表示能否获救。
[attach]274366[/attach]
至此,我们完成了一个数据处理工作,运用亿信豌豆DM可视化的数据预处理操作过程也非常方便易懂。假如您对数据发掘也感兴味,可以一同交流交流哦~
作者:
正气存内
时间:
2019-12-6 17:38
前排支持下
作者:
狼齿_
时间:
2019-12-7 17:02
边撸边过
作者:
zhangqun张
时间:
2019-12-8 10:56
支持支持再支持
欢迎光临 智客公社 (http://bbs.cnaiplus.com/)
Powered by Discuz! X3.4