Python pandas.DataFrame 找出有空值的行

yipeiwu_com6年前Python基础

0.摘要

pandas中DataFrame类型中,找出所有有空值的行,可以使用.isnull()方法和.any()方法。

1.找出含有空值的行

方法:DataFrame[DataFrame.isnull().T.any()]

其中,isnull()能够判断数据中元素是否为空值;T为转置;any()判断该行是否有空值。

import pandas as pd
import numpy as np
n = np.arange(20, dtype=float).reshape(5,4)
n[2,3] = np.nan
index = ['index1', 'index2', 'index3', 'index4', 'index5']
columns = ['column1', 'column2', 'column3', 'column4']
frame3 = pd.DataFrame(data=n, index=index, columns=columns)
print(frame3[frame3.isnull().T.any()])

程序成功找到了第三行为有空值的行。

2.为什么加转置

在代码中,isnull()的结果需要求转置之后,才能进行any()操作,这是为什么呢?

下面对比一下isnull转置和非转置的情况:

print(frame3.isnull().any())
print("========================")
print(frame3.isnull().T.any())

可见:

非转置:frame3.isnull().any(),得到的每一列求any()计算的结果,输出为列的Series。

转置:frame3.isnull().T.any(),得到的每一行求any()计算的结果,输出为行的Series。

总结

以上所述是小编给大家介绍的Python pandas.DataFrame 找出有空值的行,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python fileinput模块使用实例

fileinput模块可以对一个或多个文件中的内容进行迭代、遍历等操作。 该模块的input()函数有点类似文件readlines()方法,区别在于: 前者是一个迭代对象,即每次只生成一...

python 匹配url中是否存在IP地址的方法

因为需要检测一个一个链接中是否包含了IP地址,在这里需要使用到正则表达式 ,python完美的支持了正则表达式,在这里使用re模块来完成,对正则表达式并不是很熟练,每次都是需要用的时候现...

示例详解Python3 or Python2 两者之间的差异

示例详解Python3 or Python2 两者之间的差异

每门编程语言在发布更新之后,主要版本之间都会发生很大的变化。 在本文中,Vinodh Kumar 通过示例解释了 Python 2 和 Python 3 之间的一些重大差异,以帮助说明语...

Hadoop中的Python框架的使用指南

Hadoop中的Python框架的使用指南

 最近,我加入了Cloudera,在这之前,我在计算生物学/基因组学上已经工作了差不多10年。我的分析工作主要是利用Python语言和它很棒的科学计算栈来进行的。但Apache...

使用Python对MySQL数据操作

本文介绍Python3使用PyMySQL连接数据库,并实现简单的增删改查。 什么是PyMySQL? PyMySQL是Python3.x版本中用于连接MySQL服务器的一个库,Python...