逻辑错误清洗
逻辑错误除了以下列举的情况,还有很多未列举的情况,在实际操作中要酌情处理。另外,这一步骤在之后的数据分析建模过程中有可能重复,因为即使问题很简单,也并非所有问题都能够一次找出,我们能做的是使用工具和方法,尽量减少问题出现的可能性,使分析过程更为高效。
1.数据重复清洗
1)存在各个特征值完全相同的两条/多条数据
此时直接删除并只保留其中一条数据。
df.drop_duplicates()
2)数据不完全相同,但从业务角度看待数据是同一个数据
如页面埋点时,进入页面和退出页面都会上报一次数据,只有时间不一样,其他字段相同,在统计pv/uv时应该进行去重。
根据某个/多个特征值唯一区分每个样本,则可使用该特征/多个特征进行去重。
df.drop_duplicates(subset=['ID'], keep='last')
2.不合理值清洗
根据业务常识,或者使用但不限于箱型图(Box-plot)发现数据中不合理的特征值。
不合理值的例子:
- 年龄:200岁;
- 个人年收入:10000万:
- 籍贯:汉族。
3.矛盾内容修正
有些字段是可以互相验证的,举例:身份证号是1101031980XXXXXXXX,然后年龄填18岁。在这种时候,需要根据字段的数据来源,来判定哪个字段提供的信息更为可靠,去除或重构不可靠的字段。