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 登录网站详解及实例
Apr 11 Python
Python编程对列表中字典元素进行排序的方法详解
May 26 Python
在VS2017中用C#调用python脚本的实现
Jul 31 Python
Python如何使用Gitlab API实现批量的合并分支
Nov 27 Python
对Pytorch中Tensor的各种池化操作解析
Jan 03 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
Python统计学一数据的概括性度量详解
Mar 03 Python
Django微信小程序后台开发教程的实现
Jun 03 Python
基于K.image_data_format() == 'channels_first' 的理解
Jun 29 Python
Python安装并操作redis实现流程详解
Oct 13 Python
python excel多行合并的方法
Dec 09 Python
python绘制高斯曲线
Feb 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
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
2014/06/04 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
2015/12/11 PHP
PHP实现查询手机归属地的方法详解
2017/04/28 PHP
在 Laravel 中 “规范” 的开发短信验证码发送功能
2017/10/26 PHP
PHP fclose函数用法总结
2019/02/15 PHP
php和asp语法上的区别总结
2019/05/12 PHP
laravel 解决后端无法获取到前端Post过来的值问题
2019/10/22 PHP
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
js取float型小数点后两位数的方法
2014/01/18 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
jQuery中is()方法用法实例
2015/01/06 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
AngularJS ng-blur 指令详解及简单实例
2016/07/30 Javascript
js将字符串中的每一个单词的首字母变为大写其余均为小写
2017/01/05 Javascript
JS获取月的第几周和年的第几周实例代码
2018/12/05 Javascript
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
layui输入框只允许输入中文且判断长度的例子
2019/09/18 Javascript
es6数组的flat(),flatMap()函数用法实例分析
2020/04/18 Javascript
利用JavaScript模拟京东按键输入功能
2020/12/01 Javascript
TensorFlow实现RNN循环神经网络
2018/02/28 Python
python 定时器,轮询定时器的实例
2019/02/20 Python
Python3使用PySynth制作音乐的方法
2019/09/09 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
2020/06/04 Python
python的pip有什么用
2020/06/17 Python
jupyter notebook远程访问不了的问题解决方法
2021/01/11 Python
浅谈CSS3 动画卡顿解决方案
2019/01/02 HTML / CSS
CSS3 实现雷达扫描图的示例代码
2020/09/21 HTML / CSS
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
电大自我鉴定
2013/10/27 职场文书
公司拓展活动方案
2014/02/13 职场文书
酒店仓管员岗位职责
2014/04/28 职场文书
初一新生军训方案
2014/05/22 职场文书
交通事故协议书范本
2016/03/19 职场文书
html5表单的required属性使用
2021/07/07 HTML / CSS
Mysql事务索引知识汇总
2022/03/17 MySQL
B站评分公认最好看的动漫,你的名字评分9.9,第六备受喜欢
2022/03/18 日漫