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中的并发编程实例
Jul 07 Python
python中字典(Dictionary)用法实例详解
May 30 Python
简单介绍使用Python解析并修改XML文档的方法
Oct 15 Python
浅谈python中set使用
Jun 30 Python
一个基于flask的web应用诞生 使用模板引擎和表单插件(2)
Apr 11 Python
TF-IDF算法解析与Python实现方法详解
Nov 16 Python
Python线性回归实战分析
Feb 01 Python
下载官网python并安装的步骤详解
Oct 12 Python
python 实现绘制整齐的表格
Nov 18 Python
深度学习入门之Pytorch 数据增强的实现
Feb 26 Python
Python HTTP下载文件并显示下载进度条功能的实现
Apr 02 Python
详解python如何引用包package
Jun 07 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
关于svn冲突的解决方法
2013/06/21 PHP
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
PHP 断点续传实例详解
2017/11/11 PHP
用JavaScript实现仿Windows关机效果
2007/03/10 Javascript
JS继承 笔记
2011/07/13 Javascript
JQuery分别取得每行最后一列和最后一行的示例代码
2013/08/18 Javascript
js点击事件链接的问题解决
2014/04/25 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
2017/01/04 Javascript
Angular中支持SCSS的方法
2017/11/18 Javascript
JS同步、异步、延迟加载的方法
2018/05/05 Javascript
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
2018/05/10 Javascript
webpack 样式加载的实现原理
2018/06/12 Javascript
JS实现百度网盘任意文件强制下载功能
2018/08/31 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
[01:28:24]NAVI vs VG Supermajor 败者组 BO3 第三场 6.5
2018/06/06 DOTA
[03:00]2018完美盛典_最佳英雄奖
2018/12/17 DOTA
[01:02:04]EG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
Python实现简单状态框架的方法
2015/03/19 Python
Python中map,reduce,filter和sorted函数的使用方法
2015/08/17 Python
用python代码将tiff图片存储到jpg的方法
2018/12/04 Python
在Python 字典中一键对应多个值的实例
2019/02/03 Python
Python unittest单元测试框架实现参数化
2020/04/29 Python
Python绘制组合图的示例
2020/09/18 Python
详解css3中dispaly的Grid布局与Flex布局
2020/09/11 HTML / CSS
意大利顶级奢侈品电商:LUISAVIAROMA(支持中文)
2020/05/26 全球购物
机械专业应届生求职信
2013/09/21 职场文书
临床医学专业个人的自我评价
2013/09/27 职场文书
法制宣传标语
2014/06/23 职场文书
敬老院标语
2014/06/27 职场文书
付款承诺函范文
2015/01/21 职场文书
2015年三万活动总结
2015/03/25 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
送给客户微信问候语!
2019/07/04 职场文书
python实现网络五子棋
2021/04/11 Python
Python机器学习之逻辑回归
2021/05/11 Python
python​格式化字符串
2022/04/20 Python