数据分析过程中哪个步骤花费的时间最多?

  《R语言实战第二版》的作者卡巴科弗曾经感叹:“数据分析师在数据预处理上花费了60%的时间”。我们所知道的建模,评估模型等数据分析工作所花费的时间远远没有数据预处理的多。可以说没有高质量的数据就没有高质量的分析结果。

  再漂亮的可视化,没有准确的数据支撑,也是空中楼阁。不光是可视化,基于数据的分析,模型,支撑风控、营销和运营,在缺少数据质量支撑的前提下几乎都无从谈起。

  数据预处理一方面是为了提高数据的质量,另一方面也是为了适应所做数据分析的软件或者方法。一般来说数据预处理步骤有数据清洗、数据集成、数据变换、数据规约,每个大步骤又有一些小的细分点,当然了,这四个大步骤在做数据预处理时未必都要执行。

  01

  数据清洗

  数据清洗,顾名思义,“黑”的变成“白”的,“脏”的数据变成“干净”的,一般来说,脏数据就是数据分析中数据存在乱码,无意义的字符,以及含有噪音的数据。

  脏数据具体表现在形式上和内容上的脏,形式上的脏数据有缺失值、带有特殊符号的数据,内容上的脏数据上有异常值。

  那么什么是缺失值呢?

  缺失值包括缺失值的识别和缺失值的处理。缺失值的产生原因很多,包括忽略元组、人工填写遗漏值、使用一个全局常量填充遗漏值、使用属性的平均值填充遗漏值、使用与给定元组属同一类的所有样本的平均值、使用最可能的值填充遗漏值(利用决策树、回归、贝叶斯等算法)等。

  在数据缺失严重时,会对分析结果造成较大影响,因此对剔除的异常值以及缺失值,要采用合理的方法进行填补,常见的方法有平均值填充法、K最近距离法、回归法、极大似线估计法等。

  1、平均值填充法

  取所有对象(或与该对象具有相同决策属性值的对象)的平均值来填充该缺失的属性值。

  2、K最近距离法

  先根据欧式距离或相关分析确定距离缺失数据样本最近的K个样本,将这K个值加权平均来估计缺失数据值。

  3、回归法

  基于完整的数据集,建立回归方程(模型),对于包含空值的对象,将已知属性值代入方程来估计未知属性值,以此估计值来进行填充;但当变量不是线性相关或预测变量高度相关时会导致估计偏差。

  4、期望值最大化方法(EM)

  EM算法是一种在不完全数据情况下计算极大似然估计或者后验分布的迭代算法。

  在给定完全数据和前一次迭代所得到的参数估计的情况下计算完全数据对应的对数似然函数的条件期望(E步),后用极大化对数似然函数以确定参数的值,并用于下步的迭代(M步)。

  5、多重插补法

  由包含m个插补值的向量代替每一个缺失值,然后对新产生的m个数据集使用相同的方法处理,得到处理结果后,综合结果,最终得到对目标变量的估计。

  异常值也是需要处理的,那么什么是异常值呢?

  异常值跟缺失值一样,包括异常值的识别和异常值的处理。异常值的识别有两种方法:物理判别法和统计判别法。

  1、物理判别法

  根据人们对客观事物、业务等已有的认识,判别由于外界干扰、人为误差等原因造成实测数据偏离正常结果,判断异常值。

  2、统计判别法

  给定一个置信概率,并确定一个置信限,凡超过此限的误差,就认为它不属于随机误差范围,将其视为异常值。常用的方法有拉依达准则、肖维勒准则、格拉布斯准则、狄克逊准则、t检验。

  异常值的处理有删除含有异常值的观测、当作缺失值、平均值修正、不处理。

  在进行异常值处理时要先复习异常值出现的可能原因,再判断异常值是否应该舍弃。

  随着数据量的增大,异常值和缺失值对整体分析结果的影响会逐渐变小,因此在“大数据”模式下,数据清洗可忽略异常值和缺失值的影响,而侧重对数据结构合理性的分析。

  02

  数据集成

  数据集成就是将多个数据源合并放到一个数据存储中,当然如果所分析的数据原本就在一个数据存储里就不需要数据的集成了。

  一般来说,数据集成的实现是将两个数据框以关键字为依据,在进行数据集成时可能会出现几种情况:

  一个数据代表着两个不同的意思

  两个不同的数据代表一个意思

  数据的重复出现

  这三个数据使得数据分析工作变得十分繁琐,从而影响数据分析的准确性,这就需要我们对于数据进行集成的工作。

  03

  数据变换

  数据的变换就是把数据转化成适当的形式,来满足软件或分析理论的需要。

  一般我们可以通过简单的函数变换进行数据变换,什么是简单的函数变换呢?简单函数变换用来将不具有正态分布的数据变成有正态分布的数据。

  04

  数据规约

  数据归约是指在尽可能保持数据原貌的前提下,最大限度地精简数据量。

  数据归约主要有两个途径:属性选择和数据采样,分别针对原始数据集中的属性和记录。

  假定在公司的数据仓库选择了数据用于分析,这样数据集将非常大。在海量数据上进行复杂的数据分析扣挖掘将需要很长时间,使得这种分析不现实或不可行。

  数据归约技术可以用来得到数据集的归约表示,它小得多,但仍接近地保持原数据的完整性。这样,在归约后的数据集上挖掘将更有效,并产生相同(或几乎相同)的分析结果。

  数据归约的策略有:

  数据立方体聚集:聚集操作用于数据方中的数据。

  维归约:可以检测并删除不相关、弱相关或冗余的属性或维。

  数据压缩:使用编码机制压缩数据集。

  数值归约:用替代的、较小的数据表示替换或估计数据,如参数模型(只需要存放校型参数,而不是实际数据)或非参数方法,如聚类、选样和使用直方图。

  离散化和概念分层生产:属性的原始值用区间值或较高层的概念替换,概念分层允许挖掘多个抽象层上的数据,是数据挖掘的一种强有力的工具。

途傲科技为中小企业提供网站制作、网站建设、微信H5、微信小程序,多商户平台,多级分销系统,APP开发,手机网站,HTML5多端自适应网站,营销型企业站建设,及对技术人才的培养等都积累与沉淀了丰富的心得和实战经验。

如果您有想法,可以将需求提交给我们【免费提交需求,获取解决方案】

免责声明:文章部分内容收集于互联网,不代表本站的观点和立场,如有侵权请联系删除。

发表评论

您的电子邮箱地址不会被公开。

QQ客服
运营电话
您好,有任何疑问请与我们联系!