Python pandas库中的isnull()详解

yipeiwu_com7年前Python基础

问题描述

python的pandas库中有一个十分便利的isnull()函数,它可以用来判断缺失值,我们通过几个例子学习它的使用方法。

首先我们创建一个dataframe,其中有一些数据为缺失值。

 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

得到的结果如下所示

    0  1   2   3   4
 0 63.0 89 58.0 94.0 10.0
 1 44.0 77 66.0 54.0 14.0
 2 25.0 41 93.0 56.0  NaN
 3 43.0 26 27.0 53.0 44.0
 4  NaN 98 45.0 32.0 45.0
 5  NaN 28  NaN 72.0 10.0
 6 69.0 92  NaN 24.0 61.0
 7 51.0 22 35.0  NaN 72.0
 8 83.0 32 93.0 62.0 25.0
 9 48.0 54 83.0 30.0 79.0

我们先来运行以下isnull()看会出现什么结果

df.isnull()
    0   1   2   3   4
 0 False False False False False
 1 False False False False False
 2 False False False False  True
 3 False False False False False
 4  True False False False False
 5  True False  True False False
 6 False False  True False False
 7 False False False  True False
 8 False False False False False
 9 False False False False False

可见程序返回了布尔值,该处为缺失值,返回True,该处不为缺失值,则返回False

其它

直接使用isnull()并不能很直观的反应缺失值的信息。

我们再调用其他命令进行尝试。

df.isnull().any()
 0   True
 1  False
 2   True
 3   True
 4   True
dtype: bool

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

df.isnull().sum()
 0  2
 1  0
 2  2
 3  1
 4  1
 dtype: int64

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

以上这篇Python pandas库中的isnull()详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

收藏整理的一些Python常用方法和技巧

1. 逆转字符串的三种方法 1.1. 模拟C++中方法, 定义一个空字符串来实现 通过设置一个空字符串, 然后讲参数中的字符串从后往前遍历, 使用字符串的加法合并为新的字符串 复制代码...

如何基于Python批量下载音乐

如何基于Python批量下载音乐

这篇文章主要介绍了如何基于Python批量下载音乐,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 音乐是生活的调剂品,目前很多的音乐只...

Python脚本文件打包成可执行文件的方法

Python脚本文件打包成可执行文件的方法

将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe、cx_freez...

python实现三维拟合的方法

如下所示: from matplotlib import pyplot as plt import numpy as np from mpl_toolkits.mplot3d imp...

Python THREADING模块中的JOIN()方法深入理解

看了oschina上的两个代码,受益匪浅。其中对join()方法不理解,看python官网文档的介绍: join([timeout]):等待直到进程结束。这将阻塞正在调用的线程,直到被调...