当前位置:   article > 正文

数据挖掘流程总结及挖掘算法比较_数据挖掘算法对比

数据挖掘算法对比

一、数据前期探索

  • 数据质量分析:

数据预处理的前提

主要任务:检查原始数据中是否存在脏数据

脏数据:不符合要求,以及不能直接进行相应分析的数据。包括:缺失值,异常值,不一致的值,重复数据,含有特殊符号的数据。

1、缺失值处理方式:删除存在缺失值的记录; 对可能值进行插补; 不处理。

2、异常值(离群点)处理方式:

   简单统计量分析(判断变量取值是否超出范围);

   3 原则:如果数据服从正态分布,在3 原则下,异常值被定义为一组测定值中与平均值的偏差超过3倍标准差的值。

                     如果数据不服从正态分布,可以用远离平均值的多少倍标准差来描述。

  箱型图分析:以四分位数和四分为距为基础判断异常值

3、一致性分析

    不一致数据的产生主要发生在数据集成的过程中,由于数据来自于不同的数据源等导致。

  • 数据特征分析:

1、分布分析:

  定量数据:绘制频率分布直方图

  定性数据:根据变量的分类来分组,绘制饼图和条形图

2、对比分析:绝对数比较、相对数比较

3、统计量分析:分析集中趋势、离中趋势

   集中趋势度量:均值、中位数、众数

   离中趋势度量:极差、标准差、变异系数、四分位数间距

4、周期性分析

5、贡献度分析

6、相关性分析:绘制散点图、计算相关系数


二、数据预处理

(可以使用 Hive 进行数据的导入,存储和预处理)

1、数据清洗

删除原始数据集中的无关数据、重复数据、平滑噪声数据、筛选掉与挖掘主题无关的数据、处理缺失值、异常值等。

缺失值:

  三种处理方法:删除记录、数据插补、不处理 

  插补方法:拉格朗日插值法(Scipy库中提供了函数 ):对于平面上已知的 n 个点,可以找到一个 n-1 次多项式,使此多项式曲线通过这 n 个点(无两点在一条直线上)。将缺失的函数值对应的点 x 带入多项式求得近似值。

  1. data[u'a']=None #置为空值
  2. data=data[data.notnull()] #剔除空值
  3. if(data[i].isnull())[j] #判断是否为空值

API REFERENCE: https://docs.scipy.org/doc/scipy/reference/generated/scipy.interpolate.lagrange.html#scipy.interpolate.lagrange

删除记录:若原始数据量大,缺失值所占比例较小,对结果影响不大,则可以对其进行丢弃处理。

使用Hive,Scipy 和 data.describe( )处理空值的方法:https://blog.csdn.net/Carolinedy/article/details/82251902

异常值:(箱型图data.boxplot( )

  处理方法:删除记录、平均值修正、不处理

2、数据集成

将多个数据源合并存放在一个一致的数据存储(如数据仓库)中的过程。

冗余属性识别:部分可以通过相关分析检测

单位不统一、同名异义、异名同义这几中情况的集成。

3、数据变换

对数据进行规范化处理、以转换成适用于挖掘任务及算法的形式。

简单函数变换:

包括平方、开方、取对数、差分运算等。常用来将不具有正态分布的数据变换成具有正态分布的数据。

        在时间序列分析中,差分运算有时可以将非平稳序列转换成平稳序列。

规范化(

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/252927
推荐阅读
相关标签
  

闽ICP备14008679号