Python pandas中isnull()函数详解:检测与统计缺失值

键盘旁的猫
键盘旁的猫
发布时间:2026-10-15 | 4人浏览过
原创

本文详细介绍Python pandas库中isnull()函数的使用方法。通过创建包含缺失值的DataFrame,演示isnull()如何返回布尔值矩阵,isnull().any()如何识别含缺失值的列,以及isnull().sum()如何统计每列缺失值数量。结合代码示例与结果分析,帮助开发者快速掌握缺失值检测技巧。

前言:

构建含缺失值的DataFrame

在Python的pandas库中,isnull()是一个非常有用的函数,主要用于识别数据中的缺失值。为了深入理解其用法,我们将通过具体的代码示例进行演示。首先,我们需要构建一个DataFrame对象,并在其中人为设置一些缺失值,以便后续观察isnull()的处理结果。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(10,99,size=(10,5)))
df.iloc[4:6,0] = np.nan
df.iloc[5:7,2] = np.nan
df.iloc[7,3] = np.nan
df.iloc[2:3,4] = np.nan

执行上述代码后,生成的DataFrame结构如下所示:

此外,开发者还可以利用PyCharm集成开发环境中的SciView工具直观地查看数据状态。

使用isnull()检测缺失值

接下来,我们首先调用isnull()函数,观察其返回的具体结果。

print(df.isnull())

运行上述代码后,控制台输出的结果如下所示:

总结:isnull()函数返回的是一个布尔值矩阵。如果某个位置的数据是缺失值,则对应位置返回True;如果数据存在且非空,则返回False。

使用isnull().any()识别含缺失值的列

虽然直接调用isnull()能返回布尔矩阵,但这种方式不够直观,难以快速掌握缺失值的整体分布情况。因此,我们可以结合其他聚合函数进行进一步分析。例如,使用df.isnull().any()来检查哪些列包含缺失值。

# 会判断哪些列包含缺失值,该列存在缺失值则返回True,反之False。
print(df.isnull().any())

运行上述代码后,结果如下所示:

总结:isnull().any()用于判断哪些列中包含至少一个缺失值。如果某列存在缺失值,则该列返回True;如果该列没有缺失值,则返回False。

我们再来看另一个实用的例子。

使用isnull().sum()统计缺失值数量

使用isnull().sum()可以直接统计并输出每一列中缺失值的总个数。

# isnull().sum()就更加直观了,它直接告诉了我们每列缺失值的个数。
print(df.isnull().sum())

运行上述代码后,结果如下所示:

下面对上图中的统计结果进行详细解释:

  • 第0列中有2个值为NaN(Not a Number,即缺失值)。
  • 第1列中有1个值为NaN。
  • 第2列中有2个值为NaN。
  • 第3列中有1个值为NaN。
  • 第4列中有1个值为NaN。

仔细观察上述统计结果,可以发现它们与isnull().sum()的输出完全一致,这验证了统计方法的准确性。

至此,关于Python pandas库中isnull()函数的使用方法介绍完毕。如需了解更多Python中isnull相关的内容,建议搜索本站历史文章或继续阅读后续教程。感谢大家的支持!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表