📌  相关文章
📜  在 pandas 列中查找 nan 值 - Python (1)

📅  最后修改于: 2023-12-03 15:37:25.647000             🧑  作者: Mango

在 pandas 列中查找 nan 值 - Python

Pandas 是 Python 中用于数据分析和数据挖掘的一个重要库。在数据分析的过程中,有时候需要对数据集中缺失的值(nan)进行处理。本文将介绍如何在 Pandas 列中查找 nan 值。

例子

首先,我们需要创建一个示例数据集。下面的代码会创建一个 DataFrame 对象,其中包含了一些 nan 值:

import pandas as pd
import numpy as np

data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Ella'], 
        'age': [28, np.nan, 45, np.nan, 35],
        'gender': [np.nan, 'M', 'F', 'M', 'F'],
        'income': [np.nan, 35000, 48000, np.nan, 42000]}

df = pd.DataFrame(data)

现在,我们想要找到 DataFrame 中的所有包含 nan 值的列,可以使用 isna() 函数:

df.isna().any()

代码运行的结果是:

name      False
age        True
gender     True
income     True
dtype: bool

上述代码表明,DataFrame 中只有 age、gender、income 列中包含了 nan 值。

按列查找 nan 值

有时候我们仅想查找某一列中包含 nan 值的行,可以使用以下代码:

df[df['age'].isna()]

上述代码表明,我们仅查找 age 列中包含 nan 值的行。

按行查找 nan 值

有时候我们也想查找某一行中包含 nan 值的列,可以使用以下代码:

df.loc[3].isna()

上述代码表明,我们仅查找第四行中包含 nan 值的列。

结论

通过 Pandas 的 isna() 函数,我们可以快速查找 DataFrame 中包含 nan 值的列;同时,我们也可以根据需要进一步查找某一列或某一行中包含 nan 值的行或列。这对于数据的清洗和处理非常有帮助。