通常我们获取到的初始数据通常具有缺失值,重复值,以及一些噪音数据等,需要在使用之前进行数据预处理。
数据预处理的常用流程为:去除唯一属性、缺失值处理、异常值处理、属性编码、数据标准化、特征选择、主成分分析。
1、去除唯一属性
唯一属性通常是一些id属性,这些属性并不能刻画样本自身的分布规律,所以简单地删除这些属性即可。
2、缺失值处理
- 删除包含缺失值的一整列
当该列种的大部分数据都缺失时可采用该方式,如果只有个别数据缺失,直接删除整列会导致大量信息丢失
- 填充缺失值
往缺失值中填入相关数据,例如:列均值、中位数、众数等
填充值往往比直接删除整列数据有更好的效果
- 扩展填充
直接填充缺失值往往和实际的值之间有所差别,加入一列记录原始数据是否缺失可能会对预测结果有更好的效果
3、异常值识别与处理
异常值是数据中常有的噪音,异常值又可以分为“真异常”和“假异常”。有时特定业务动作的变化会引发“真异常”,此时异常值反应的是真实情况,如果直接删除掉,可能就错失了信息。
识别异常值的方法:
- 描述性统计法
通过描述性统计的方法,可以获取到数据的极大值、极小值、均值、标准差等基本统计数据,然后根据常识判断出与基本认知不符的数据。
例如:年龄的极大值为200,或者极小值为负数等,都属于异常数据 - 3 σ 3\sigma 3σ方法
对于符合正太分布或者近似符合正太分布的数据,99%的数值应该位于距离均