Pandas 中 series.eq() 方法的基本操作是什么?

pandasserver side programmingprogramming更新于 2025/10/12 4:52:17

Pandas 构造函数中的 series.eq() 方法用于将给定序列的元素与其他序列(可能是另一个序列或标量值)进行比较。结果将返回一个包含布尔值的新序列对象。

使用此 eq() 方法可执行元素相等操作。布尔值 True 表示第二个序列对象中的等值。其余不相等的值用布尔值 False 表示。

eq() 方法的参数包括 other、fill_value 和 level。

示例 1

在下面的示例中,我们将看到 eq() 方法如何将序列对象的元素与标量值进行比较。

# 导入包
import pandas as pd
import numpy as np

# 创建序列
sr = pd.Series([24, 63, 21, np.nan, 24, 56, 24, 50])
print(sr)

# 将元素与标量值 24 进行比较
result = sr.eq(24)
print(result)

解释

首先,我们使用一个整数列表和一些 Nan 值创建了一个 Pandas Series。之后,我们使用标量值 24 调用了 eq() 方法。

输出

输出如下 −

0    24.0
1    63.0
2    21.0
3     NaN
4    24.0
5    56.0
6    24.0
7    50.0
dtype: float64

0     True
1    False
2    False
3    False
4     True
5    False
6     True
7    False
dtype: bool

运行上述代码后,我们将得到以下结果。eq() 方法将序列对象的元素与值 24 进行比较。因此,索引位置 0、4 和 6 处的等价值表示为 True,其余所有值均表示为 False。

示例 2

与上一个示例一样,这里我们将对两个序列对象应用 eq() 方法,而不更改任何默认参数值。

# 导入包
import pandas as pd
import numpy as np

# 创建序列
sr1 = pd.Series([np.nan, 61, 11, np.nan, 24, 56, 30, np.nan, 55])
print(sr1)

sr2 = pd.Series([0, 61, 22, np.nan, 24, 45, 30, 78, 93])
print(sr2)

# 比较两个序列对象
result = sr1.eq(sr2)
print(result)

输出

输出如下所示 −

0     NaN
1    61.0
2    11.0
3     NaN
4    24.0
5    56.0
6    30.0
7     NaN
8    55.0
dtype: float64

0     0.0
1    61.0
2    22.0
3     NaN
4    24.0
5    45.0
6    30.0
7    78.0
8    93.0
dtype: float64

0    False
1     True
2    False
3    False
4     True
5    False
6     True
7    False
8    False
dtype: bool

在上面的输出块中,我们可以看到输入序列对象 sr1 和 sr2,以及 eq() 方法生成的序列对象。eq() 方法对于 Nan 值不返回 true,因此在索引位置 3 处表示的是 False 值。


相关文章