📅  最后修改于: 2023-12-03 15:37:25.647000             🧑  作者: Mango
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 值的行,可以使用以下代码:
df[df['age'].isna()]
上述代码表明,我们仅查找 age 列中包含 nan 值的行。
有时候我们也想查找某一行中包含 nan 值的列,可以使用以下代码:
df.loc[3].isna()
上述代码表明,我们仅查找第四行中包含 nan 值的列。
通过 Pandas 的 isna()
函数,我们可以快速查找 DataFrame 中包含 nan 值的列;同时,我们也可以根据需要进一步查找某一列或某一行中包含 nan 值的行或列。这对于数据的清洗和处理非常有帮助。