Pandas系列(五)对缺失值的处理

  Pandas主要有三类函数处理缺失值,对其分类可以分为检测丢弃填充

  • isnullnotnull:检测是否是空值,可用于dfseries
  • dropna:丢弃、删除缺失值。这个函数有三个参数:
    1. axis : 删除行还是列,{0 or ‘index’, 1 or ‘columns’}, default 0按行删除。
    2. how : 如果等于any则任何值为空都删除,如果等于all则所有值都为空才删除。
    3. inplace : 如果为True则修改当前df,否则返回新的df
  • fillna:填充空值,有四个参数:
    1. value:用于填充的值,可以是单个值,或者字典(key是列名,value是值)
    2. method : 等于ffill使用前一个不为空的值填充forword fill;等于bfill使用后一个不为空的值填充backword fill
    3. axis : 按行还是列填充,{0 or ‘index’, 1 or ‘columns’} default 0按行填充。
    4. inplace : 如果为True则修改当前df,否则返回新的df

读取数据

  参数skiprows=2表示忽略读取前两行,从第三行开始读取:

读取数据

  可以看到数据中有很多空值nan

检测空值

  1. 检测所有行和列的空值(isnull())情况:

检测空值

  1. 检测某一列的空值(isnull())和非空值(notnull())情况:

检测空值和非空值的情况

  通过检测为空或者非空的结果(True or False)就可以对DataFrame进行筛选:

筛选数据

删除空值

  • 删除掉全是空的列,axis="columns"参数表示的就是按列删除:

按列删除

  • 删除掉全是空值的行:

删除掉全为空的行

填充空值

  这里的填充空值提供3种方式:

  1. 采用字典的方法:

字典填充

  1. 采用赋值的方法:

赋值填充

  1. 使用前面的有效值填充,用ffill:forward fill

使用前面的值填充

  最后可以将其写入到excel中去:

studf.to_excel("./aa.xlsx", index=False)

我的微信公众号名称:小小何先生
公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值