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

Python-pandas的dropna()方法-丢弃含空值的行、列0 摘要 dropna 方法 能够找到 DataFrame 类型数据的空值 缺失值 将空值所在的行 列删除后 将新的 DataFrame 作为返回值返回 1 函数详解函数形式 dropna axis 0 how any thresh None subset None inplace False 参数 axis 轴 0 或 index 表示按行删除 1 或 column

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)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

原地修改

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

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

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207688.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午1:19
下一篇 2026年3月19日 下午1:19


相关推荐

  • JavaScript实现页面前进后退「建议收藏」

    JavaScript实现页面前进后退「建议收藏」function pagebackward()   {     window.history.back();   }      function pageforward()   {     window.history.forward();   }      click=”pageforward()”>

    2022年7月25日
    36
  • git在idea切换远程分支_python git切换分支

    git在idea切换远程分支_python git切换分支想切换到另一个分支的时候,在IDEA的右下角没找到对应的远程分支随即我来到这个地方:项目->git->Repository->pull选择我想要切换的分支原文链接:https://blog.csdn.net/u012898245/article/details/84876094感谢楼主整理提供!…

    2025年11月27日
    5
  • 敏捷测试的理解

    敏捷测试的理解首先敏捷测试 Agiletesting 是测试的一种 原有测试定义中通过执行被测系统发现问题 通过测试这种活动能够提供对被测系统提供度量等概念还是适用的 敏捷测试是遵循敏捷宣言的一种测试实践 1 强调从客户的角度 即从使用系统的用户角度 来测试系统 2 重点关注持续迭代地测试新开发的功能 而不再强调传统测试过程中严格的测试阶段 3 建议尽早开始测试 一旦系统某个层面可测 比如提供了模块功能 就要

    2025年8月28日
    4
  • java 添加盲水印_OpenCV-图像处理-频域手段添加盲水印[通俗易懂]

    java 添加盲水印_OpenCV-图像处理-频域手段添加盲水印[通俗易懂][傅里叶变换算法及盲水印实现]盲水印,顾名思义就是看不见的水印。今天我们来说下频域加盲水印。相信大家做过图像处理的对频域、时域、空间域概念都有了一定的了解。空间域,我们日常所见的图像就是空域。空域添加数字水印的方法是在空间域直接对图像操作(之所以说的这么绕,是因为不仅仅原图是空域,原图的差分等等也是空域),比如将水印直接叠加在图像上。频域:描述信号在频率方面特性时用到的一种坐标系。在图像中就是图像…

    2025年7月20日
    5
  • AspNETPager的用法

    AspNETPager的用法nbsp 先下载 4 3 版 然后安装问题 1 在 vs net2005 中 该控件并不能自动添加到工具面板中 需要手动添加项 选定 AspNetPager dll 即可 2 在 codeBehind 的 cs 文件中 要 usingWuqi Webdiyer 3 写好 ChangePage 事件后 要与 aspnetpager 控件相关联以下是一段示例代码 前台 default aspx nbsp

    2026年3月16日
    3
  • java中的protected访问权限

    java中的protected访问权限java 中的 protected 的访问权限 nbsp nbsp nbsp nbsp java 中 protected 的几点说明 下面主要分为两点说明 第一继承性 第二非继承性 nbsp nbsp nbsp nbsp 继承性 如果一个类继承了另一个类 无论这个类和另一个类是否在同一个包中 都可以继承另一个类中的 protected 的成员 nbsp nbsp nbsp nbsp 非继承性 第一点 如果再 A 类中要访问 B 类中的申明的 protected 的成员只需要 A 类和 B 类在

    2026年3月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号