pandas 空数据处理方法详解
作者:蔡文君 时间:2022-08-18 00:29:01
这篇文章主要介绍了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决定垂直或水平
来源:https://www.cnblogs.com/caiwenjun/p/11778378.html
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python写的Tkinter程序屏幕居中方法
实例讲解Python的函数闭包使用中应注意的问题
在Python的框架中为MySQL实现restful接口的教程
![](https://img.aspxhome.com/file/2023/0/107100_0s.png)
10个超实用jQuery插件资源
Node.js(安装,启动,测试)
![](https://img.aspxhome.com/file/2023/9/125729_0s.png)
python 猴子补丁(monkey patch)
Python 图像处理之颜色迁移(reinhard VS welsh)
![](https://img.aspxhome.com/file/2023/1/117371_0s.jpg)
如何将数据访问页绑定到断开连接的 ADO 记录集上?
基于Python实现电影售票系统
![](https://img.aspxhome.com/file/2023/2/121742_0s.jpg)
vue-router钩子函数实现路由守卫
![](https://img.aspxhome.com/file/2023/5/132975_0s.png)
详解Python对某地区二手房房价数据分析
![](https://img.aspxhome.com/file/2023/6/118766_0s.jpg)
python实现list由于numpy array的转换
python调用文件时找不到相对路径的解决方案
![](https://img.aspxhome.com/file/2023/9/124389_0s.png)
mysql proxy问题
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
![](https://img.aspxhome.com/file/2023/4/123704_0s.jpg)
Python中优雅使用assert断言的方法实例
关于Typora中latex的用法与常用语法
![](https://img.aspxhome.com/file/2023/3/132363_0s.png)
MySQL中SQL的单字节注入与宽字节注入
python 将html转换为pdf的几种方法
![](https://img.aspxhome.com/file/2023/1/118001_0s.png)
详解nvm管理多版本node踩坑
![](https://img.aspxhome.com/file/2023/0/129350_0s.png)