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

作者:小郝2002 时间:2022-11-13 01:51:31 

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)

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

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

df.isnull().any()

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

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

df.isnull().any()

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

 可以看到返回了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返回缺失值位置的方法实例教程

附: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    

来源:https://blog.csdn.net/m0_54650283/article/details/122382632

标签:pandas,缺失值,返回
0
投稿

猜你喜欢

  • 解决django 新增加用户信息出现错误的问题

    2021-07-27 12:50:46
  • Pycharm设置去除显示的波浪线方法

    2022-06-29 16:04:59
  • 解决新django中的path不能使用正则表达式的问题

    2021-06-09 18:45:21
  • 详解如何用Python写个听小说的爬虫

    2021-09-04 09:56:09
  • pytorch finetuning 自己的图片进行训练操作

    2023-03-17 00:46:53
  • python将txt文件读入为np.array的方法

    2023-07-23 08:10:29
  • LINUX下Oracle数据导入导出的方法详解

    2023-07-06 15:20:32
  • 使用 prometheus python 库编写自定义指标的方法(完整代码)

    2021-03-03 06:03:58
  • 基于Python第三方插件实现西游记章节标注汉语拼音的方法

    2022-05-10 17:57:03
  • django haystack实现全文检索的示例代码

    2021-04-08 05:00:59
  • python3 requests 各种发送方式详解

    2021-04-06 09:03:22
  • JavaScript ES6的新特性使用新方法定义Class

    2024-04-10 11:00:30
  • Python+OpenCV内置方法实现行人检测

    2023-10-19 12:52:47
  • 18个帮你简化代码的Python技巧分享

    2021-08-12 02:41:12
  • ASP中使用Session变量的优缺点

    2007-10-01 18:02:00
  • ASP开发中有用的函数(function)集合(1)

    2008-10-14 17:10:00
  • Python numpy.zero() 初始化矩阵实例

    2021-04-06 01:52:46
  • PHP hebrev()函数用法讲解

    2023-06-03 12:49:32
  • python numpy.ndarray中如何将数据转为int型

    2022-11-21 16:14:09
  • 基于循环神经网络(RNN)的古诗生成器

    2023-04-29 13:28:06
  • asp之家 网络编程 m.aspxhome.com