pandas返回缺失值位置的方法实例教程

 更新时间:2022年01月10日 16:19:00   作者:小郝2002  
当我们用python进行数据处理时会遇到很多缺失值,缺失值一般是由于我们所处理的数据本身的特性、当初录入的失误或者其它原因导致的,下面这篇文章主要给大家介绍了关于pandas返回缺失值位置的方法,需要的朋友可以参考下

pandas返回缺失值位置

有的时候我们可能需要获取一些缺失值的信息,因此我们需要获取这些缺失值在DataFrame中的位置。

假如我们的DataFrame的索引为数值顺序索引,要返回缺失值的位置

import numpy as np
import pandas as pd

我们首先构建一个有缺失值的DataFrame

df = pd.DataFrame({'A':[1, 2, 3, np.nan],
                   'B':[2, np.nan, 4, 6], 
                   'C':[3, 2, np.nan, 3],
                   'D':[np.nan, 1, np.nan, 2]})
display(df)

首先我们可以查看每列中是否有缺失值

df.isnull().any()

我们发现四个columns均有缺失值,比如我们想知道每列的缺失值的具体位置,以A为例

df.isnull().any()

 可以看到返回了A的缺失值位置的索引,这样在定位的时候使用loc函数就可以直接定位到缺失值方便查看了.

如果我们想生成一个字典来存储全部的缺失值位置信息,可以用:

a = df.isnull().any()
a = a.loc[a==True]
columns = a.index.tolist()
mydict = {}#创建一个字典来存储所有的位置
temp = []
for column in columns:
    temp = df.loc[df[column].isnull()].index.tolist()
    mydict[column] = temp
mydict

附:Pandas查找缺失值的位置,并返回缺失值行号以及列号

#!/usr/bin/evn python
# -*-coding:utf8 -*-
import pandas as pd
data = [[None, None, 90, 80],[57, 43, 89, 65],[78, 50, 67, 78],[None, 78, 90, 73],[67, 45, 78, 76],[77, 88, None, 45],[52, 110, 120, 99],[131, 13, 32, 12]]
index = ['语文', '英语', '数学', '政治', '物理', '化学', '生物', '地理']
column = ['张三', '李四', '王五', '周六']
data = pd.DataFrame(data,index=index,columns=column)
print(data)
print("=========================================================\n")
for columname in data.columns:
    if data[columname].count() != len(data):
         loc = data[columname][data[columname].isnull().values==True].index.tolist()
         print('列名:"{}", 第{}行位置有缺失值'.format(columname,loc))

执行结果

F:\Opensources\python\python.exe D:/pythonStudy/EXCELDB/LagelangriCZ_test.py
       张三     李四     王五  周六
语文    NaN    NaN   90.0  80
英语   57.0   43.0   89.0  65
数学   78.0   50.0   67.0  78
政治    NaN   78.0   90.0  73
物理   67.0   45.0   78.0  76
化学   77.0   88.0    NaN  45
生物   52.0  110.0  120.0  99
地理  131.0   13.0   32.0  12
=========================================================
列名:"张三", 第['语文', '政治']行位置有缺失值
列名:"李四", 第['语文']行位置有缺失值
列名:"王五", 第['化学']行位置有缺失值

Process finished with exit code 0    

总结

到此这篇关于pandas返回缺失值位置的文章就介绍到这了,更多相关pandas返回缺失值位置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python中的类与类型示例详解

    Python中的类与类型示例详解

    这篇文章主要给大家介绍了关于Python中类与类型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Python pygame 动画游戏循环游戏时钟实现原理

    Python pygame 动画游戏循环游戏时钟实现原理

    这篇文章主要为大家介绍了Python pygame 动画游戏循环游戏时钟实现原理详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • python利用appium实现手机APP自动化的示例

    python利用appium实现手机APP自动化的示例

    这篇文章主要介绍了python利用appium实现手机APP自动化的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python编程编写完善的命令行工具

    Python编程编写完善的命令行工具

    提到编写命令行工具,你可能会想到用 sys.argv 或者标准库 argparse,没错,这两个很常用,不过情况复杂时没有那么方便和高效,因此今天分享两个工具,让你编写命令行工具不费吹灰之力
    2021-09-09
  • 浅析Python实现DFA算法

    浅析Python实现DFA算法

    DFA全称为Deterministic Finite Automaton,即确定有穷自动机。特征:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边标记有一个符号,其中一个状态是初态,某些状态是终态。不同于不确定的有限自动机,DFA中不会有从同一状态出发的两条边标志有相同的符号
    2021-06-06
  • Python中的左斜杠、右斜杠(正斜杠和反斜杠)

    Python中的左斜杠、右斜杠(正斜杠和反斜杠)

    这篇文章主要介绍了Python中的左斜杠、右斜杠(正斜杠和反斜杠)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08
  • Pytorch 实现权重初始化

    Pytorch 实现权重初始化

    今天小编就为大家分享一篇Pytorch 实现权重初始化,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python OpenCV实现传统图片格式与base64转换

    Python OpenCV实现传统图片格式与base64转换

    Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,本文主要介绍了Python OpenCV实现传统图片格式与base64转换,感兴趣的可以参考一下
    2021-06-06
  • Python机器学习利用随机森林对特征重要性计算评估

    Python机器学习利用随机森林对特征重要性计算评估

    本文是对随机森林如何用在特征选择上做一个简单的介绍。随机森林非常简单,易于实现,计算开销也很小,更令人惊奇的是它在分类和回归上表现出了十分惊人的性能
    2021-10-10
  • 解决使用openpyxl时遇到的坑

    解决使用openpyxl时遇到的坑

    这篇文章主要介绍了解决使用openpyxl时遇到的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论