流程
在进行任何清理操作之前,请先将每份数据备份,所有清理操作请在这份复件上进行,保留肮脏和/或凌乱的原始数据集以便日后查看。要在 pandas 中复制数据框,请使用copy
方法。如果原始数据框名为 df
,你可以把即将清理干净的数据集复件命名为 df_clean
。
df_clean = df.copy()
练习
观察下面患者 表与patients.info()输出结果的图片,通过练习来了解数据清理的流程。
一:方案确定 (定义)
从表中,我们可以看出zip_code邮编字段有异常值,邮编字段有小数点,还有些邮编只有4位数,这明显不是正确的邮编号码,所以我们可以确定以下的清理方案:
- 使用 astype方法 ''把邮编列''的数据类型从浮点型转为字符串,使用字符串切片删除掉 ''.0'' 并用 pad 方法在四位数的邮编前加一个 0
二:代码编写 (代码)
确定好清理方案后,第二步就是对提出方案进行编写代码清理;代码如下:
patients_clean.zip_code = patients_clean.zip_code.astype(str).str[:-2].str.pad(5, fillchar='0')
三:效果检验 (测试)
代码清理数据好,第三步就是检查我们清理后的数据是否已经清理好了,异常值问题是否已解决,(当前现实情况不止异常值的问题,还有缺失值,质量,数据整洁度等问题),下面我们可以通过代码来查看zip_code邮编字段是否还存在异常值,代码如下:
patients_clean.zip_code.head()