基于pandas的数据清洗

数据清洗

1、处理空值:过滤,删除,填充

2、处理重复数据:.drop_duplicates(keep = 'first') 删除重复行

3、处理异常值:异常值(极值等)可以用均值去替换

 

1、空值

1.1 空值的区别

pandas里头有两种空值类型

type(None)   # NoneType  None不可以参与运算,

type(np.nan)  # float  Nan可以参与运算

 

 

 

 1.2 空值处理

方式1: 对空值进行过滤(删除空所在的行数据)

         通过.isnull()方法 判断空值

    通过.any(axis=1) 方法 判断行是否有空值,行中有空值 返回True

    通过.index 获取空值行 的行号索引

    通过.drop(labels=indexs,axis=0) 删除有空值的行

    

    或者通过.all()方法 判断行是否没有空值,行中无空值 返回True

    通过.loc[] 逻辑索引 获得无空值的所有行

 

 

 

 

 

 

 

 

 

 方式2: .dropna(axis=0) 可以直接删除 含有空值的行

 方式3: .fillna(axis=0,method='ffilll') 使用fillna方法 对空值进行填充,可以用vaulue=99指定填充,也可以用method=‘ffilll’向前填充,method='bfill'向后填充, 使用均值填充

 

 

 

 

 

 2、重复值

 

 

 

 

 

 

 3、异常数据

 

 

posted @ 2021-02-07 13:20  正在学Python  阅读(172)  评论(0编辑  收藏  举报