Python与数据分析

【Python学习笔记】处理缺失值、重复值和异常值

2019-08-21  本文已影响0人  清梦载星河
镇楼图(图片源自unsplash)

零、前言

刚获取的数据中可能会有一些不规整的数据,比如:缺失数据、重复数据、异常数据,因此我们需要对数据进行预处理,剔除这些不规整的数据。

一、缺失值的检测与处理

缺失值就是由于某些原因导致部分数据为空,对于为空的这部分数据我们一般有两种处理方式,一种是删除,即将含有缺失值的数据删除;另一种是填充,即将缺失的那部分用某个值代替。
Python中缺失值一般用NaN表示。

1.1 缺失值的检测

相关方法

1.2 缺失值的处理

1.2.1 删除缺失值

相关方法:

dropna()默认删除含有缺失值的行,也就是只要某一行又缺失值就把这一行删除。
指定thresh参数可以设置缺失值的判定个数,例如thresh=3,那么当某一行有3个缺失值是才会对这一行删除。
指定how='all'就只会删除那些全为空值的行了。
指定axis参数可以设置删除行或者列,默认为删除行。

1.2.2 填充缺失值

相关方法:

设置value参数指定要填充的值。
设置method参数,bfill为向后取值,ffill为向前取值。
也可以传入一个字典进行分别填充。例如:df.fillna({'A':'apple','D':'dog'}),A列中的缺失值填充为 apple ,D 列中的缺失值填充为 dog 。

二、重复值的检测与处理

重复数据就是同样的记录有多条,对于这样的数据我们一般做删除处理。

相关方法:

df.drop_dunplicates()默认对所有值进行重复值判断,且默认保留第一个(行)值。
设置subset参数可以自定义按照某一列进行重复值判断;
设置keep参数可以自定义删除是保留第一个重复值还是最后一个重复值。

三、异常值的检测与处理

3.1 异常值的检测

3.2 异常值的处理

上一篇 下一篇

猜你喜欢

热点阅读