检查Pandas数据框架中的NaN

Pandas 中,NaN 是指 Not a Number,代表缺失值或无效值。检查 Pandas 数据框架中的 NaN 是数据预处理中重要的一步。下面介绍如何进行完整的 NaN 检查:

1. 查看数据框架中的缺失值

可以使用 isnull()isna() 函数查看数据框架中缺失值的情况。这两个函数的作用相同,都返回一个布尔型数组,表示数据框架中缺失值的位置。

import pandas as pd
import numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
print(df.isnull())
print(df.isna())

输出结果:

       A      B      C
0  False  False  False
1  False   True  False
2   True   True  False

       A      B      C
0  False  False  False
1  False   True  False
2   True   True  False

从上面的结果可以看出,df.isnull()df.isna() 返回了一个与原始数据框架维度相同的数据框架,其中缺失值的位置为 True,非缺失值的位置为 False

2. 统计数据框架中缺失值的数量

可以使用 isnull().sum()isna().sum() 函数统计缺失值的数量。这两个函数的作用相同,均返回每列中缺失值的数量。

print(df.isnull().sum())
print(df.isna().sum())

输出结果:

A    1
B    2
C    0
dtype: int64

A    1
B    2
C    0
dtype: int64

从上面的结果可以看出,在 df 中,A 列有 1 个缺失值,B 列有 2 个缺失值,C 列没有缺失值。

3. 统计数据框架中非缺失值的数量

可以使用 count() 函数统计数据框架中非缺失值的数量。

print(df.count())

输出结果:

A    2
B    1
C    3
dtype: int64

从上面的结果可以看出,在 df 中,A 列有 2 个非缺失值,B 列有 1 个非缺失值,C 列有 3 个非缺失值。

4. 删除数据框架中的缺失值

可以使用 dropna() 函数删除数据框架中的缺失值。该函数返回一个新的数据框架,其中缺失值所在的行或列被删除。

print(df.dropna()) # 删除含缺失值的行
print(df.dropna(axis=1)) # 删除含缺失值的列

输出结果:

     A    B  C
0  1.0  4.0  7

   C
0  7
1  8
2  9

从上面的结果可以看出,df.dropna() 删除了第二行,包含缺失值的列被全部删除;df.dropna(axis=1) 删除了 B 列和 C 列,因为它们都含有缺失值。

以上就是关于检查 Pandas 数据框架中的 NaN 的完整攻略和实例说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:检查Pandas数据框架中的NaN - Python技术站

(0)
上一篇 2023年3月27日
下一篇 2023年3月27日

相关文章

  • Python 数据处理库 pandas进阶教程

    Python数据处理库pandas进阶教程 本教程分为以下几个部分: Pandas的基本数据结构 数据的读取和写入 数据清洗和预处理 数据的合并和分组 时间序列数据的处理 数据的可视化 1. Pandas的基本数据结构 Pandas的两种基本数据结构是Series和DataFrame。 Series是一种类似于一维数组的对象,其中的每个元素都有一个标签(或索…

    python 2023年5月14日
    00
  • 详解Pandas groupby分组操作

    groupby 是 pandas 中非常重要的操作之一,它是指将数据按照一定的条件分为若干组,对每组数据执行特定的操作,然后将结果汇总为新的 DataFrame 的过程。通常,groupby 操作包括以下三个步骤: 分割:按照一定的规则将数据分为若干组; 应用:对每组数据执行特定的操作,例如聚合、转换、过滤等; 合并:将执行操作后得到的结果合并为一个新的数据…

    Pandas 2023年3月5日
    00
  • Python中的pandas.bdate_range()函数

    pandas.bdate_range()函数简介 pandas.bdate_range()函数是pandas库中的一个日期生成器,用于生成指定时间周期内的工作日日期序列。该函数能够生成从开始日期到结束日期内的所有工作日日期(不包括周末和国定假日)。 函数定义如下: pandas.bdate_range(start=None, end=None, period…

    python-answer 2023年3月27日
    00
  • pandas多级分组实现排序的方法

    下面是关于“pandas多级分组实现排序的方法”的完整攻略: 1. 背景介绍 Pandas是一个灵活而强大的Python数据分析包,它可以帮助我们完成过滤、拆分、聚合等一系列的数据处理操作。而在实现数据分组之后,我们有时需要对分组结果进行排序操作。本攻略主要介绍如何使用Pandas进行多级分组并实现排序的方法。 2. 多级分组的实现 Pandas提供了对多列…

    python 2023年5月14日
    00
  • Pandas.DataFrame时间序列数据处理的实现

    当我们处理时间序列数据时,Pandas.DataFrame是一个非常方便实用的工具。在实现时间序列数据处理时,应遵循以下步骤: 1. 读取数据 读取数据是使用Pandas.DataFrame的第一步。可以通过多种方式读取数据,如csv、txt、Excel等。下面是读取CSV文件的示例代码: import pandas as pd df = pd.read_c…

    python 2023年5月14日
    00
  • Python机器学习三大件之二pandas

    Python机器学习三大件之二pandas 一、Pandas Pandas是一个强大的数据分析库,它广泛应用于数据清洗、数据分析、数据可视化等领域。它是Python机器学习三大件之一。在数据分析过程中,我们常常需要做数据清洗、处理缺失值、合并数据、分组聚合、时间序列处理等各种操作,而Pandas可以帮助我们更加高效地完成这些操作。Pandas主要提供了两种数…

    python 2023年5月14日
    00
  • pandas数值排序的实现实例

    下面是关于“pandas数值排序的实现实例”的完整攻略。 1、排序的概念 排序(Sorting)是对一个对象内元素(数据)、成分、属性等按照某种顺序排列的过程。排序操作是数据分析中非常重要的操作之一,不仅在数据分析中非常常见,而且在数据可视化和机器学习中也经常用到。 2、pandas中的数据排序 pandas是一个适用于数据操作和数据分析的工具集,它在各种类…

    python 2023年5月14日
    00
  • pytorch中关于backward的几个要点说明

    当我们使用pytorch构建神经网络模型时,我们需要对模型直接或间接定义的预测函数进行梯度计算,以便可以通过梯度下降算法来更新模型参数。而在pytorch中,backward()是用于计算梯度的函数。以下是在使用pytorch中关于backward的几个要点说明: 1.基础概念 backward()函数是从计算图中的叶子节点(也就是输入节点)开始沿着梯度方向…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部