📅  最后修改于: 2023-12-03 15:24:18.556000             🧑  作者: Mango
在数据分析中,经常需要对缺失数据进行处理。本文介绍如何在 pandas 中查找缺失数据的行。
我们首先新建一个包含缺失数据的数据集。以下代码可以新建一个包含 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)
我们可以使用 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
我们可以使用 sum()
函数来计算每一列的缺失数据数量。以下代码将返回每一列的缺失数据数量。
missing_count = df.isnull().sum()
print(missing_count)
输出结果如下:
A 0
B 2
C 0
dtype: int64
可以看到,第 2 列有 2 个缺失数据。
我们可以使用 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 行包含缺失数据。
如果我们想移除包含缺失数据的行,可以使用 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 中查找缺失数据的行的介绍。