📜  查找空值 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:55:35.433000             🧑  作者: Mango

在 pandas 中查找空值

在数据分析和数据科学中,数据通常不是完整的。有时候我们需要查找缺失的值或为空的单元,以便我们可以优化数据,并在后续分析中得出正确的结论。Pandas库提供了许多方法来处理缺失数据。在本文中,我们将学习如何查找 Pandas DataFrame 和 Series 中的空值。

检测空值

在 Pandas 中,我们可以使用 isnull() 方法来检测 DataFrame 中的空值。该方法返回一个布尔值,其中为 True 的单元格表示空值。

import pandas as pd

data = pd.read_csv("data.csv")
null_values = data.isnull()

print(null_values)

输出:

      Name    Age   City  Gender
0    False  False  False   False
1    False  False  False   False
2    False  False  False    True
3    False  False   True   False
4    False  False  False   False

在上面的例子中,我们读取了一个名为 "data.csv" 的 CSV 文件,并使用 isnull() 方法查找其中的空值。输出显示,第三行中的 "Gender" 列和第四行中的 "City" 列为空。

计算空值

另一个方法是使用 sum() 方法来计算每列中的空值数量。这个方法返回一个 Series,其中每个索引表示列名,每个值表示该列中的空值数量。

null_count = data.isnull().sum()

print(null_count)

输出:

Name      0
Age       0
City      1
Gender    1
dtype: int64

在上面的例子中,我们使用了 isnull().sum() 方法来计算 DataFrame 中每列的空值数量并将其存储在 null_count 变量中。输出显示,"City" 列中有一个空值,"Gender" 列中也有一个空值。

删除空值

在某些情况下,我们可能希望将 DataFrame 或 Series 中包含空值的行或列删除。Pandas 提供了许多方法来删除这些空值。

# 删除包含空值的行
data.dropna(inplace=True)

# 删除包含空值的列
data.dropna(axis=1, inplace=True)

在上面的例子中,我们使用 dropna() 方法来删除包含空值的行或列。inplace=True 参数表示修改原始 DataFrame 或 Series。

以上是查找空值的一些方法,在数据分析和数据科学中,查找和处理缺失数据是非常重要的。Pandas 提供了许多方法来处理缺失的数据,同时特别重要的是理解和决定如何处理这些空值。