搞定数据清洗,你只需要这几招

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/DataCastle/article/details/84133888

数据清洗是数据分析过程中不可或缺的一个环节,通过数据清洗,可以统一数据的格式,减少数据存在的多种问题,以提高分析过程的效率并且使分析结果有所保证。

在收集数据或者中,我们获取到的数据可能是这样的:

亦或是这样的:

还可能是这样的:

这个时候我们需要进行的步骤就是数据清洗,数据清洗的对象主要是:缺失值、异常值、重复值和噪音处理。

缺  失  值

粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断被称为【缺失值】。

它指的是现有数据集中某个或某些属性的值是不完全的。

处理缺失值的方法有:

直接删除(Delete directly)

适用于样本较大的情况,样本较小时,可能会影响最终的分析结果 。

估算(Estimation)

数据均匀,均值法填充;数据分布倾斜,中位数填充;根据数据的分布情况,可以采用均值、中位数、或者众数进行数据填充。

3 插补法(Interpolation method)

·随机插补法:从总体中随机抽取某几个样本代替缺失样本。

·多重填补法:包含m个插补值的向量代替每一个缺失值的过程,要求m大于等于20。m个完整数据集合能从插补向量中创建。

·热平台插补:在非缺失数据集中找到一个与缺失值所在样本相似的样本,利用其中的观测值对缺失值进行插补。

·拉格朗日插值法和牛顿插值法:两者都是通过给定n+1个互异的插值节点,让你求一条n次代数曲线近似地表示待插值的函数曲线。

建模法(Modeling method)

·回归:基于完整的数据集,建立回归方程。

将已知属性值代入方程来估计未知属性值,以估计值来进行空值得填充。

·极大似然估计:基于缺失类型为随机缺失得条件下,假设模型对于完整的样本是正确的,通过观测数据的边际分布可以对缺失数据进行极大似然估计。

·贝叶斯、随机森林、决策树:建立模型对缺失值进行预测。

异  常  值

指一组测定值中与平均值的偏差超过两倍标准差的测定值。

与平均值的偏差超过三倍标准差的测定值,称为【高度异常的异常值】。

处理异常值的方法:

不处理(Do not deal with)

若算法对异常值不敏感,则可以不处理;

算法对异常值敏感,如kmeans,knn之类的一些基于距离计算的一些算法,则最好不要用这种方法,

平均值替代(Average override)

利用平均值来代替异常值,损失信息小,简单高效。

视为缺失值(Considered missing values)

将异常值视为缺失值来处理,采用处理缺失值的方法来处理异常值

重复数据

数据中存在相同的数据,称为【重复数据】。

| 去重(Duplicate removal)

数据集中的重复值包括以下两种情况:

·数据值完全相同的多条数据记录。

·数据主体相同但匹配到的唯一属性值不同。

当数据集中的重复值是第一种情况时,直接去重即可,如果是第二种情况,需要根据属性的性质来决定是否去除。

噪音处理

数据中存在着错误或异常(偏离期望值)的数据,称为【噪音数据】。

这些数据对数据的分析造成了干扰。

处理噪音的方法:

分箱法(Split-Box method)

将待处理的数据按照一定的规则放入箱子中,考察每一个箱子中的数据,根据各个箱子的情况采取方法进行数据处理。

-分箱方法:

· 等深分箱法:按记录行数分箱,每箱具有相同的记录数

· 等宽分箱法:每个箱的区间范围是一个常量,根据区间 范围分箱

· 用户自定义区间

· 最小熵:使各区间分组内的记录具有最小熵

-分箱后对数据进行平滑处理:

· 均值平滑:对同一箱值中的数据求平均值,箱内的数据用平均值代替。

· 中位数平滑:取中位数,箱内数据用中位数来代替。

· 边界平滑:箱中的最大和最小值同样被视为边界。箱中的每一个值被最近的边界值替换。

  一般而言,宽度越大,光滑效果越明显。

回归(Regression method)

利用函数拟合数据来光滑数据。

·单线性回归:找出拟合两个属性(或变量)的“最佳”直线,使得一个属性能够预测另一个。

·多线性回归:它涉及多于两个属性,并且数据拟合到一个多维面。

使用回归,找出适合数据的数学方程式,能够帮助消除噪声。

聚类(Clustering)

将物理的或抽象对象的集合分组为不同簇(一组数据对象的集合),找出并清除落在簇之外的孤立点,这些孤立点就是噪声。

 最后,在进行清洗之前,一定一定不能把忘了储存你的源数据!

点击关注,探索数据科学之旅

公众号ID

DataCastle-VIP

猜你喜欢

转载自blog.csdn.net/DataCastle/article/details/84133888