如何检查序列对象中的元素是否大于标量值?


通过使用 pandas series.gt() 方法,我们可以检查序列对象中的元素是否大于标量值。gt() 比较操作与 series > Other 完全等效。

这里“other”可以是任何单个或多个元素的数据结构,或类似列表的对象,例如标量、序列或序列。

要检查给定序列的元素与标量之间的“大于”比较操作,我们需要将标量值作为参数发送到 series.gt() 方法。

该方法返回一个包含序列与标量“大于”结果的序列。结果序列具有布尔值。它表示对于大于标量的元素为真。否则,它将表示假。

示例 1

在下面的示例中,我们对序列对象元素和标量值“50”之间应用了“大于”条件操作。

# importing packages
import pandas as pd
import numpy as np

#create pandas series
series = pd.Series([89, 48, np.nan, 57, 25, np.nan, 62])
print(series)

# apply gt() method with a scalar value
result = series.gt(50)
print(result)

输出

输出如下:

0    89.0
1    48.0
2    NaN
3    57.0
4    25.0
5    NaN
6    62.0
dtype: float64

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

在将 Nan 与任何其他值进行比较时,输出始终为 False。这可以通过使用 fill_value 参数替换缺失值来纠正。

示例 2

在下面的示例中,我们使用 fill_value 参数用整数 20 替换缺失值 (Nan/NA)。

# importing packages
import pandas as pd
import numpy as np

#create pandas series
sr = pd.Series([1, np.nan, 11, 21, 31, 41, np.nan, 9])
print("Series object:")
print(sr)

# apply gt() method using a scalar value by replacing missing values
result = sr.gt(10, fill_value=20)
print("Output:")
print(result)

输出

输出如下:

Series object:
0    1.0
1    NaN
2    11.0
3    21.0
4    31.0
5    41.0
6    NaN
7    9.0
dtype: float64

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

在上面的输出块中,我们可以观察到 Nan 值被替换为“20”。输出序列对象的第一个和最后一个元素小于标量值 10,其余所有元素都大于标量值。

更新于: 2022-03-07

5K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告