Python实战基础之Pandas统计某个数据列的空值个数

 更新时间:2022年08月31日 09:07:33   作者:菜鸟实战  
我们在处理数据的时候,经常需要检查数据的质量,也需要知道出问题的数据在哪个位置,下面这篇文章主要给大家介绍了关于Python实战基础之利用Pandas统计某个数据列空值个数的相关资料,需要的朋友可以参考下

一、实战场景

实战场景:Pandas 如何统计某个数据列的空值个数

二、主要知识点

  • 文件读写
  • 基础语法
  • Pandas
  • numpy

三、菜鸟实战

马上安排!

1、创建 python 文件

"""
对如下DF,设置两个单元格的值
·使用iloc 设置(3,B)的值是nan
·使用loc设置(8,D)的值是nan
"""
import numpy as np
import pandas as pd
 
np.random.seed(66)
df = pd.DataFrame(np.random.rand(10, 4), columns=list('ABCD'))
df.iloc[3, 1] = np.nan
df.loc[8, 'D'] = np.nan
print(df)
 
 
print(df.isnull().sum())

2、运行结果

          A         B         C         D
0  0.154288  0.133700  0.362685  0.679109
1  0.194450  0.251210  0.758416  0.557619
2  0.514803  0.467800  0.087176  0.829095
3  0.298641       NaN  0.678006  0.903489
4  0.514451  0.539105  0.664328  0.634057
5  0.353419  0.026643  0.165290  0.879319
6  0.067820  0.369086  0.115501  0.096294
7  0.083770  0.086927  0.022256  0.771043
8  0.049213  0.465223  0.941233       NaN
9  0.361318  0.031319  0.304045  0.188268
A    0
B    1
C    0
D    1
dtype: int64

 补充:Pandas检查是否有空值、处理空值

1.创建有空值的DataFrame

import numpy as np
import pandas as pd

dates = pd.date_range("20200307", periods=4)
df1 = pd.DataFrame(np.arange(12).reshape(4, 3), index=dates, columns=["A", "B", "C"])
df2 = pd.DataFrame(df1, index=dates, columns=["A", "B", "C", "D"])  # 新增D列,却不赋值,NaN表示空值
print(df2)
# 打印输出:
#             A   B   C   D
# 2020-03-07  0   1   2 NaN
# 2020-03-08  3   4   5 NaN
# 2020-03-09  6   7   8 NaN
# 2020-03-10  9  10  11 NaN

2.检查是否有空值

print(df2.isnull())  # 是空值返回True,否则返回False
print(np.any(df2.isnull()))  # 只要有一个空值便会返回True,否则返回False
print(np.all(df2.isnull()))  # 全部值都是空值便会返回True,否则返回False
# 输出结果:
#                 A      B      C     D
# 2020-03-07  False  False  False  True
# 2020-03-08  False  False  False  True
# 2020-03-09  False  False  False  True
# 2020-03-10  False  False  False  True
# True
# False

3.给NaN赋值

df2.iloc[0, 3] = 10  # 直接给某个位置赋值
print(df2)
# 打印输出:
#            A   B   C     D
# 2020-03-07  0   1   2  10.0
# 2020-03-08  3   4   5   NaN
# 2020-03-09  6   7   8   NaN
# 2020-03-10  9  10  11   NaN

series = pd.Series([11, 12, 13], index=dates[1:4])
df2["D"] = series  # 同时给D列赋多个值
print(df2)
# 打印输出:
#             A   B   C     D
# 2020-03-07  0   1   2   NaN
# 2020-03-08  3   4   5  11.0
# 2020-03-09  6   7   8  12.0
# 2020-03-10  9  10  11  13.0

4.去除有空值的行或列

df2.loc["2020-03-10", ["A", "B", "C"]] = [11, 12, 15]
df2.fillna("null")  # 把空值填充成null

# dropna(axis,how,subset)方法会删除有空值的行或列,
# axis为0是行,axis为1是列,
# how为any时该行或列只要有一个空值就会删除,all是全都是空值才删除
# subset是一个列表,指定某些列
df2.dropna(axis=0, how="any", subset=["A", "D"])

总结

到此这篇关于Python实战基础之Pandas统计某个数据列空值个数的文章就介绍到这了,更多相关Pandas统计数据列空值个数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 用PyInstaller把Python代码打包成单个独立的exe可执行文件

    用PyInstaller把Python代码打包成单个独立的exe可执行文件

    这篇文章主要介绍了用PyInstaller把Python代码打包成单个独立的exe可执行文件,需要的朋友可以参考下
    2018-05-05
  • python监控进程状态,记录重启时间及进程号的实例

    python监控进程状态,记录重启时间及进程号的实例

    今天小编就为大家分享一篇python监控进程状态,记录重启时间及进程号的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • python实现获取当前设备的地点位置

    python实现获取当前设备的地点位置

    这篇文章主要介绍了python实现获取当前设备的地点位置,电脑如何获取当前所处的地理位置?它不会像我们一样对地理位置有感性的认知,它只认识数据,简言之,电脑可以通过获取当前连接的公网IP,反推所处的位置环境,需要的朋友可以参考一下
    2022-03-03
  • python检查目录文件权限并修改目录文件权限的操作

    python检查目录文件权限并修改目录文件权限的操作

    这篇文章主要介绍了python检查目录文件权限并修改目录文件权限的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • python中利用队列asyncio.Queue进行通讯详解

    python中利用队列asyncio.Queue进行通讯详解

    asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持。 下面这篇文章主要给大家介绍了关于python中利用队列asyncio.Queue进行通讯的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-09-09
  • Python函数之zip函数的介绍与实际应用

    Python函数之zip函数的介绍与实际应用

    zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象(python2 返回的是这些元组组成的列表 ),下面这篇文章主要给大家介绍了关于Python函数之zip函数实际应用的相关资料,需要的朋友可以参考下
    2022-03-03
  • VTK与Python实现机械臂三维模型可视化详解

    VTK与Python实现机械臂三维模型可视化详解

    这篇文章主要介绍了VTK与Python实现机械臂三维模型可视化详解,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Python实现批量修改xml文件的脚本

    Python实现批量修改xml文件的脚本

    这篇文章主要为大家详细介绍了如何通过Python实现批量修改xml文件功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-11-11
  • Python中class内置方法__init__与__new__作用与区别解析

    Python中class内置方法__init__与__new__作用与区别解析

    这篇文章主要介绍了Python中class内置方法__init__与__new__作用与区别探究,本文中涉及的类均为Python3中默认的新式类,对应Python2中则为显式继承了object的class,因为未继承object基类的旧式类并没有这些内置方法,需要的朋友可以参考下
    2022-09-09
  • python csv一些基本操作总结

    python csv一些基本操作总结

    今天给大家带来的是关于Python的相关知识,文章围绕着python csv的一些基本操作展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06

最新评论