数据清洗
数据清洗是指发现并纠正数据文件中可识别的错误的最后一道程序,包括检查数据一致性,处理异常值,处理缺失值,光滑噪声和去重等。
1.一致性检查
一致性检查是根据每个变量的合理取值范围和相互关系,检查数据是否合乎要求,发现超出正常范围、逻辑上不合理或者相互矛盾的数据。
2.缺失值处理
1.删除元组
2.数据补齐
2.1人工填写
2.2全局常量填充
2.3统计量填充:缺失值为连续数值型,使用平均值或中位数来填充(中位数更具鲁棒性)。缺失值为离散数值型,使用众数填充。
2.4热卡填充:对于一个包含空值的对象,在完整数据集中找一个与他最相似的对象,用这个对象的值来进行填充。
2.5回归:首先选择若干个预测缺失值的自变量,然后建立回归方程估计缺失值。
2.6建模填充:可以将缺失值作为新的label,部分其他属性值作为特征,建立模型得到预测值并进行填充。如RF,LGB
2.7多重填充:
3.异常值处理
1.异常点检测
1.1 简单的统计分析:
1.2 3alpha原则
1.3 箱型图分析
1.4 基于模型检测:如孤立森林。
1.5 基于距离:通常可以在对象之间建立临近性度量,异常对象是那些原理其他对象的对象。
1.6 基于密度:当一个点的局部密度显著低于它的大部分近邻时才将其分类为离群点。
1.7 基于聚类:通过聚类算法形成簇,如密度聚类,如果某些点分布稀疏且不属于任何簇,则视为异常点。
2.异常点处理
2.1 删除异常值
2.2 不处理
2.3 统计量替换
2.4 视为缺失值
4.噪声处理
噪声是被测变量的随机误差或者方差,主要区别于离群点。
观测值 = 真实数据 + 噪声。
离群点属于观测值,集由可能是真实数据产生的,也有可能是噪声带来的。
噪音处理
1. 回归
2. 分箱
2.1 有监督
2.1.1 卡方分箱
2.1.2 Best-KS分箱
2.2 无监督
2.2.1 等宽分箱
2.2.2 等频分箱
2.2.3 聚类分箱
需要清洗数据的主要类型
残缺数据:应有信息缺失。
噪声数据:噪声是被测量的变量的随机误差或方差。
错误数据:业务系统不够健全,在接收输入后没有进行判断直接写入后台数据库造成。
清洗的评价标准
1.可信性
1.准确性:描述数据是否与对应客观实体的特征相一致。
2.完整性:数据是否存在缺失记录或缺失字段。
3.一致性:同一实体的同一属性的值在不同系统是否一致。
4.有效性:数据是否满足用户定义的条件活在一定阈值范围内。
5.唯一性:数据是否存在重复记录。
2.可用性
1.时间性:描述数据是当前数据还是历史数据
2.稳定性:描述数据是否在有效期内。