python pandas利用fillna方法实现部分自动填充功能


Posted in Python onMarch 16, 2020

昨天,我们学习了pandas中的dropna方法,今天,学习一下fillna方法。该方法的主要作用是实现对NaN值的填充功能。该方法主要有3个参数,分别是:value,method,limit等。其余参数可以通过调用help函数获取信息。

(1)value

该参数主要是确定填充数值

>>> df = pd.read_excel(r'D:/myExcel/1.xlsx')
>>> df
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  NaN   32 124.0
2 jiken  89.0   89 NaN
3 jiken  89.0   89 125.0
# 默认将所有值均填充为0
>>> df.fillna(0)
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  0.0   32 124.0
2 jiken  89.0   89 0.0
3 jiken  89.0   89 125.0

# 也可以通过字典控制每列传什么值
>>> my_dict = {'Chinese' : 92, 'id' : 98}
>>> df.fillna(my_dict)
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  92.0   32 124.0
2 jiken  89.0   89 98.0
3 jiken  89.0   89 125.0

2、method参数

该参数主要控制自动填充,是向上填充还是向下填充
method : {‘backfill', ‘bfill', ‘pad', ‘ffill', None}, default None
pad / ffill: 向下自动填充
backfill / bfill: 向上自动填充

# 向下
>>> df.fillna(method='ffill')
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  12.0   32 124.0
2 jiken  89.0   89 124.0
3 jiken  89.0   89 125.0

# 向上
>>> df.fillna(method='bfill')
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  89.0   32 124.0
2 jiken  89.0   89 125.0
3 jiken  89.0   89 125.0

3、limit参数

该参数类似于mysql中的limit。向上或者向下填充时控制最大填充前几行

# 限制自动填充最大填充1行。
>>> df.fillna(method = 'bfill', limit=1)
  name Chinese Chinese.1  id
0  bob  12.0   12 123.0
1 millor  89.0   32 124.0
2 jiken  89.0   89 125.0
3 jiken  89.0   89 125.0

哈哈,以上就是关于fillna方法的介绍。
关于,isna方法很好理解,判断是否为NaN值

>>> df.isna()
 name Chinese Chinese.1  id
0 False False  False False
1 False  True  False False
2 False False  False True
3 False False  False False
>>>

总结

到此这篇关于python pandas通过fillna方法实现部分自动填充功能的文章就介绍到这了,更多相关python pandas fillna自动填充内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python的Bottle框架的一些使用技巧介绍
Apr 08 Python
Python pickle模块用法实例分析
May 27 Python
python中的字典使用分享
Jul 31 Python
基于Python的关键字监控及告警
Jul 06 Python
Python探索之爬取电商售卖信息代码示例
Oct 27 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
Nov 22 Python
python3.5 email实现发送邮件功能
May 22 Python
python3+selenium自动化测试框架详解
Mar 17 Python
Python产生一个数值范围内的不重复的随机数的实现方法
Aug 21 Python
Python 实现try重新执行
Dec 21 Python
Python selenium键盘鼠标事件实现过程详解
Jul 28 Python
详解numpy.ndarray.reshape()函数的参数问题
Oct 13 Python
Python Flask上下文管理机制实例解析
Mar 16 #Python
Python threading.local代码实例及原理解析
Mar 16 #Python
python实现ssh及sftp功能(实例代码)
Mar 16 #Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
Mar 16 #Python
Django ValuesQuerySet转json方式
Mar 16 #Python
Django 再谈一谈json序列化
Mar 16 #Python
django实现将后台model对象转换成json对象并传递给前端jquery
Mar 16 #Python
You might like
php Smarty模板生成html文档的方法
2010/04/12 PHP
php关联数组快速排序的方法
2015/04/17 PHP
PHP  Yii清理缓存的实现方法
2016/11/10 PHP
Discuz论坛密码与密保加密规则
2016/12/19 PHP
Laravel框架集合用法实例浅析
2020/05/14 PHP
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
2015/04/22 Javascript
JS实现CheckBox复选框全选全不选功能
2015/05/06 Javascript
基于javascript实现tab选项卡切换特效调试笔记
2016/03/30 Javascript
Laravel中常见的错误与解决方法小结
2016/08/30 Javascript
基于javascript实现按圆形排列DIV元素(二)
2016/12/02 Javascript
javascript函数的四种调用模式
2017/01/08 Javascript
JSON键值对序列化和反序列化解析
2017/01/24 Javascript
Bootstrap下拉菜单样式
2017/02/07 Javascript
Angular-Ui-Router+ocLazyLoad动态加载脚本示例
2017/03/02 Javascript
ionic 自定义弹框效果
2017/06/27 Javascript
python中string模块各属性以及函数的用法介绍
2016/05/30 Python
python常用函数详解
2016/09/13 Python
Django的分页器实例(paginator)
2017/12/01 Python
浅谈tensorflow中几个随机函数的用法
2018/07/27 Python
Python设计模式之解释器模式原理与用法实例分析
2019/01/10 Python
Python 互换字典的键值对实例
2019/02/12 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
2020/09/28 Python
HTML5打开手机扫码功能及优缺点
2017/11/27 HTML / CSS
远程Wi-Fi宠物监控相机:Petcube
2017/04/26 全球购物
松本清官方海外旗舰店:日本最大的药妆连锁店
2017/11/21 全球购物
世界上获奖最多的手机镜头:Olloclip
2018/03/03 全球购物
绘儿乐产品官方在线商店:Crayola.com
2019/09/07 全球购物
对于没有初始化的变量的初始值可以作怎样的假定
2014/10/12 面试题
毕业生求职推荐信
2013/11/04 职场文书
财务人员求职自荐书范文
2014/02/10 职场文书
2014年迎新年活动方案
2014/02/19 职场文书
群众路线四风问题整改措施
2014/09/27 职场文书
护理医院见习报告
2014/11/03 职场文书
MySQL中CURRENT_TIMESTAMP的使用方式
2021/11/27 MySQL