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实现子类调用父类的方法
Nov 10 Python
对于Python中线程问题的简单讲解
Apr 03 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
Sep 18 Python
Python实现的堆排序算法原理与用法实例分析
Nov 22 Python
python3 发送任意文件邮件的实例
Jan 23 Python
python实现pdf转换成word/txt纯文本文件
Jun 07 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
python使用if语句实现一个猜拳游戏详解
Aug 27 Python
使用Python刷淘宝喵币(低阶入门版)
Oct 30 Python
python字符串的拼接方法总结
Nov 18 Python
PyCharm使用Docker镜像搭建Python开发环境
Dec 26 Python
浅谈Python 中的复数问题
May 19 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
ThinkPHP的Widget扩展实例
2014/06/19 PHP
PhpStorm terminal无法输入命令的解决方法
2016/10/09 PHP
php组合排序简单实现方法
2016/10/15 PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
2016/11/30 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
ExtJS 2.0实用简明教程之应用ExtJS
2009/04/29 Javascript
模拟电子签章盖章效果的jQuery插件源码
2013/06/24 Javascript
js获取select默认选中的Option并不是当前选中值
2014/05/07 Javascript
javascript常用函数归纳整理
2014/10/31 Javascript
跟我学习javascript的函数调用和构造函数调用
2015/11/16 Javascript
JavaScript中的Number数字类型学习笔记
2016/05/26 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
javascript中的try catch异常捕获机制用法分析
2016/12/14 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
JavaScript瀑布流布局实现代码
2017/05/06 Javascript
jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
2017/07/12 jQuery
js实现图片上传预览原理分析
2017/07/13 Javascript
基于js中的原型(全面讲解)
2017/09/19 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
Django自定义分页效果
2017/06/27 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
Python中format()格式输出全解
2019/04/12 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
基于python实现FTP文件上传与下载操作(ftp&sftp协议)
2020/04/01 Python
详解Python利用configparser对配置文件进行读写操作
2020/11/03 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
玩具反斗城天猫官方旗舰店:享誉全球的玩具店
2017/10/10 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
小学开学典礼主持词
2014/03/19 职场文书
百货商场楼层班组长竞聘书
2014/03/31 职场文书
教师工作失职检讨书
2014/09/18 职场文书
农村党支部书记四风问题个人对照检查材料
2014/09/21 职场文书
解决Redis启动警告问题
2022/02/24 Redis