📜  如何在 pandas 中查找缺少数据的行 - Python (1)

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

如何在 pandas 中查找缺少数据的行 - Python

在数据分析中,经常需要对缺失数据进行处理。本文介绍如何在 pandas 中查找缺失数据的行。

1. 新建数据

我们首先新建一个包含缺失数据的数据集。以下代码可以新建一个包含 5 行和 3 列的数据集,其中第 2 行和第 4 行缺失第 2 列的数据。

import pandas as pd
import numpy as np

data = {'A': [1, 2, 3, 4, 5], 'B': [1, np.nan, 3, np.nan, 5], 'C': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
2. 查找缺失数据

我们可以使用 pandas 中的 isnull() 函数来查找缺失数据。以下代码将返回一个布尔值的 DataFrame,其中缺失数据为 True,否则为 False

missing_df = df.isnull()
print(missing_df)

输出结果如下:

       A      B      C
0  False  False  False
1  False   True  False
2  False  False  False
3  False   True  False
4  False  False  False
3. 统计缺失数据

我们可以使用 sum() 函数来计算每一列的缺失数据数量。以下代码将返回每一列的缺失数据数量。

missing_count = df.isnull().sum()
print(missing_count)

输出结果如下:

A    0
B    2
C    0
dtype: int64

可以看到,第 2 列有 2 个缺失数据。

4. 筛选缺失数据的行

我们可以使用 isnull() 函数和 any() 函数来找到包含缺失数据的行。以下代码将返回包含缺失数据的行。

missing_rows = df[df.isnull().any(axis=1)]
print(missing_rows)

输出结果如下:

   A   B  C
1  2 NaN  2
3  4 NaN  4

可以看到,第 2 行和第 4 行包含缺失数据。

5. 移除缺失数据的行

如果我们想移除包含缺失数据的行,可以使用 dropna() 函数。以下代码将移除包含缺失数据的行。

clean_df = df.dropna()
print(clean_df)

输出结果如下:

   A    B  C
0  1  1.0  1
2  3  3.0  3
4  5  5.0  5

可以看到,第 2 行和第 4 行被移除了。

以上就是在 pandas 中查找缺失数据的行的介绍。