Pandas||过滤缺失数据||pd.dropna()函数的用法说明


Posted in Python onMay 14, 2021

看代码吧~

DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
Remove missing values.

pd.dropna()函数(官方文档)用于过滤数据中的缺失数据.

缺失数据在pandas中用NaN标记.

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(5, 3), index = list('abcde'), columns = ['one', 'two', 'three'])        # 随机产生5行3列的数据    
df.ix[1, :-1] = np.nan        # 将指定数据定义为缺失
df.ix[1:-1, 2] = np.nan
print(df)

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

df.dropna()   #删除所有带缺失数据的行

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

parameters 详解
axis default 0指行,1为列
how {‘any', ‘all'}, default ‘any'指带缺失值的所有行;'all'指清除全是缺失值的行
thresh int,保留含有int个非空值的行
subset 对特定的列进行缺失值删除处理
inplace 这个很常见,True表示就地更改

补充:Python-pandas的dropna()方法-丢弃含空值的行、列

0.摘要

dropna()方法,能够找到DataFrame类型数据的空值(缺失值),将空值所在的行/列删除后,将新的DataFrame作为返回值返回。

1.函数详解

函数形式:dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

参数:

axis:轴。0或'index',表示按行删除;1或'columns',表示按列删除。

how:筛选方式。‘any',表示该行/列只要有一个以上的空值,就删除该行/列;‘all',表示该行/列全部都为空值,就删除该行/列。

thresh:非空元素最低数量。int型,默认为None。如果该行/列中,非空元素数量小于这个值,就删除该行/列。

subset:子集。列表,元素为行或者列的索引。如果axis=0或者‘index',subset中元素为列的索引;如果axis=1或者‘column',subset中元素为行的索引。由subset限制的子区域,是判断是否删除该行/列的条件判断区域。

inplace:是否原地替换。布尔值,默认为False。如果为True,则在原DataFrame上进行操作,返回值为None。

2.示例

创建DataFrame数据:

import numpy as np
import pandas as pd
 
a = np.ones((11,10))
for i in range(len(a)):
    a[i,:i] = np.nan
 
d = pd.DataFrame(data=a)
print(d)

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

按行删除:存在空值,即删除该行

# 按行删除:存在空值,即删除该行
print(d.dropna(axis=0, how='any'))

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

按行删除:所有数据都为空值,即删除该行

#  按行删除:所有数据都为空值,即删除该行
print(d.dropna(axis=0, how='all'))

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

按列删除:该列非空元素小于5个的,即删除该列

# 按列删除:该列非空元素小于5个的,即删除该列
print(d.dropna(axis='columns', thresh=5))

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

设置子集:删除第0、5、6、7列都为空的行

# 设置子集:删除第0、5、6、7列都为空的行
print(d.dropna(axis='index', how='all', subset=[0,5,6,7]))

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

设置子集:删除第5、6、7行存在空值的列

# 设置子集:删除第5、6、7行存在空值的列
print(d.dropna(axis=1, how='any', subset=[5,6,7]))

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

原地修改

# 原地修改
print(d.dropna(axis=0, how='any', inplace=True))
print("==============================")
print(d)

Pandas||过滤缺失数据||pd.dropna()函数的用法说明

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python海龟绘图实例教程
Jul 24 Python
python实现二维码扫码自动登录淘宝
Dec 27 Python
Python机器学习之决策树算法实例详解
Dec 06 Python
wxpython实现图书管理系统
Mar 12 Python
Python socket实现简单聊天室
Apr 01 Python
Pycharm取消py脚本中SQL识别的方法
Nov 29 Python
django框架创建应用操作示例
Sep 26 Python
Python Flask上下文管理机制实例解析
Mar 16 Python
Windows下PyCharm配置Anaconda环境(超详细教程)
Jul 31 Python
python单元测试框架pytest的使用示例
Oct 07 Python
python的数学算法函数及公式用法
Nov 18 Python
python 获取剪切板内容的两种方法
Nov 28 Python
Python爬虫:从m3u8文件里提取小视频的正确操作
MATLAB 全景图切割及盒图显示的实现步骤
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
May 14 #Python
PyQt5爬取12306车票信息程序的实现
python flask框架快速入门
如何将numpy二维数组中的np.nan值替换为指定的值
May 14 #Python
使用numpy nonzero 找出非0元素
May 14 #Python
You might like
joomla内置的表单验证功能使用方法
2010/06/11 PHP
php比较多维数组中值的大小排序实现代码
2012/09/08 PHP
thinkphp在模型中自动完成session赋值示例代码
2014/09/09 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
2015/03/25 PHP
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
JS动态显示表格上下frame的方法
2015/03/31 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
jQuery添加options点击事件并传值实例代码
2016/05/18 Javascript
json的使用小结
2016/06/08 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
详解vue通过NGINX部署在子目录或者二级目录实践
2018/09/03 Javascript
[01:12:40]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第三场 1月25日
2021/03/11 DOTA
windows下python安装小白入门教程
2018/09/18 Python
Keras搭建自编码器操作
2020/07/03 Python
解决pytorch 交叉熵损失输出为负数的问题
2020/07/07 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
美国休闲服装品牌:Express
2016/09/24 全球购物
南威尔士家居商店:Leekes
2016/10/25 全球购物
草莓网英国官网:Strawberrynet UK
2017/02/12 全球购物
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
会计大学生职业生涯规划书范文
2014/01/13 职场文书
会议邀请书范文
2014/02/02 职场文书
刑事代理授权委托书
2014/09/17 职场文书
环卫工作汇报材料
2014/10/28 职场文书
2014年安全员工作总结
2014/11/13 职场文书
琅琊山导游词
2015/02/05 职场文书
团员年度个人总结
2015/02/26 职场文书
JavaScript实现简单图片切换
2021/04/29 Javascript
Mysql基础知识点汇总
2021/05/26 MySQL
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js
如何使用python包中的sched事件调度器
2022/04/30 Python
Java版 单机五子棋
2022/05/04 Java/Android