pandas 空数据处理方法详解


Posted in Python onNovember 02, 2019

这篇文章主要介绍了pandas 空数据处理方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

方法一:直接删除

1.查看行或列是否有空格(以下的df为DataFrame类型,axis=0,代表列,axis=1代表行,以下的返回值都是行或列索引加上布尔值)

isnull方法

查看行:df.isnull().any(axis=1)

查看列:df.isnull().any(axis=0)

notnull方法:

查看行:df.notnull().all(axis=1)

查看列:df.notnull().all(axis=0)

例子:

df.isnull().any(axis=1) # 检测行内是否有空值
0 False
1 True
2 False
3 True
4 False
5 True
6 False
7 True
8 False
9 False
dtype: bool

注意点:以上方法都可以用~取反的办法获取相反的结果

2.在1的前提下使用df.loc[],可取出1中筛选出数据的具体数据如:

df.loc[df.isnull().any(axis=1)]

取出这几行的索引可用属性index如:df.loc[df.isnull().any(axis=1)].index

得到这些索引后可以使用drop方法进行删除如:

注意:drop方法中的axis值与其他方法相反,axis=0表示行,=1表示列。

df.drop(labels=drop_index, axis=0)

总结下来为4步:

一.使用isnull或notnull筛选:df.isnull().any(axis=0)

二.使用loc取出具体数据:df.loc[df.isnull().any(axis=1)]

三:取出这些数据的索引:df.loc[df.isnull().any(axis=1)].index

四.使用drop删除:df.drop(labels=drop_index, axis=0)

方法二:填充空值

步骤和方法一前几步相同

isnull()

notnull()

dropna(): 过滤丢失数据(df.dropna() 可以选择过滤的是行还是列(默认为行):axis中0表示行,1表示的列)

fillna(): 填充丢失数据(可以选择自主添加数据,或者用表中原有的数据进行补充)

1.使用dropna(不常用):df.dropna(axis=0)

2.使用fillna(常用):

一.df.fillna(value=666)给所有的控制赋值为666

二.df.fillna(method='ffill', axis=0) # axis=0表示在垂直方向填充(axis值:0为垂直,1为水平),使用上方的值对空值进行填充,组合起来就是,使用垂直方向上方的值对当前位置的值进行填充

三.df.fillna(method='bfill', axis=1) # axis=1表示在水平方向填充(axis值为0垂直1为水平),bfill表示使用后面的值对空值进行填充,组合起来就是,使用水平方向右边的值对当前位置的值进行填充

总结:ffill(前)和bfill(后)决定前或后,axis决定垂直或水平

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现类继承实例
Jul 04 Python
Python实现代码统计工具(终极篇)
Jul 04 Python
Python设计模式之观察者模式简单示例
Jan 10 Python
Python中文件的读取和写入操作
Apr 27 Python
python join方法使用详解
Jul 30 Python
python读写csv文件的方法
Aug 13 Python
Python 切分数组实例解析
Nov 07 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
Nov 11 Python
Python数组并集交集补集代码实例
Feb 18 Python
Python实现RabbitMQ6种消息模型的示例代码
Mar 30 Python
python脚本监控logstash进程并邮件告警实例
Apr 28 Python
python如何实现图片压缩
Sep 11 Python
python pyinstaller打包exe报错的解决方法
Nov 02 #Python
python自动生成model文件过程详解
Nov 02 #Python
python__name__原理及用法详解
Nov 02 #Python
简单了解python中的f.b.u.r函数
Nov 02 #Python
如何在python中实现随机选择
Nov 02 #Python
图解python全局变量与局部变量相关知识
Nov 02 #Python
Python如何实现动态数组
Nov 02 #Python
You might like
php实现ip白名单黑名单功能
2015/03/12 PHP
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
2017/03/13 PHP
表单内同名元素的控制
2006/11/22 Javascript
javascript 从if else 到 switch case 再到抽象
2010/07/17 Javascript
JavaScript在XHTML中的用法详解
2013/04/11 Javascript
Nodejs学习笔记之NET模块
2015/01/13 NodeJs
jQuery菜单插件superfish使用指南
2015/04/21 Javascript
JS控制表单提交的方法
2015/07/09 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
AngularJS 防止页面闪烁的方法
2017/03/09 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
在vue项目中使用sass的配置方法
2018/03/20 Javascript
Vue+axios实现统一接口管理的方法
2018/07/23 Javascript
[02:22]《新闻直播间》2017年08月14日
2017/08/15 DOTA
python类继承与子类实例初始化用法分析
2015/04/17 Python
Python之Scrapy爬虫框架安装及简单使用详解
2017/12/22 Python
Python迭代器定义与简单用法分析
2018/04/30 Python
python opencv判断图像是否为空的实例
2019/01/26 Python
Python搭建代理IP池实现获取IP的方法
2019/10/27 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
CSS3实现点击放大的动画实例代码
2017/02/27 HTML / CSS
英国花园家具中心:Garden Furniture Centre
2017/08/24 全球购物
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
DogBuddy荷兰:找到你最完美的狗保姆
2019/04/17 全球购物
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
长曲棍球装备:Lacrosse Monkey
2020/12/02 全球购物
金山毒霸系列的笔试题
2013/04/13 面试题
学校师德承诺书
2014/05/23 职场文书
政府法律服务方案
2014/06/14 职场文书
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
2021/10/16 Python
Mysql 文件配置解析介绍
2022/05/06 MySQL