pandas.Series.isin#

Series.isin(values)[源代码][源代码]#

Series 中的元素是否包含在 values 中。

返回一个布尔序列,显示序列中的每个元素是否与传递的 values 序列中的元素完全匹配。

参数:
集合或类似列表

要测试的值序列。传入单个字符串将引发 TypeError 。相反,将单个字符串转换为包含一个元素的列表。

返回:
系列

一系列布尔值,指示每个元素是否在值中。

引发:
TypeError
  • 如果 values 是一个字符串

参见

DataFrame.isin

DataFrame 上的等效方法。

示例

>>> s = pd.Series(
...     ["llama", "cow", "llama", "beetle", "llama", "hippo"], name="animal"
... )
>>> s.isin(["cow", "llama"])
0     True
1     True
2     True
3    False
4     True
5    False
Name: animal, dtype: bool

要反转布尔值,请使用 ~ 运算符:

>>> ~s.isin(["cow", "llama"])
0    False
1    False
2    False
3     True
4    False
5     True
Name: animal, dtype: bool

传递单个字符串作为 s.isin('llama') 将引发错误。请改用一个元素的列表:

>>> s.isin(["llama"])
0     True
1    False
2     True
3    False
4     True
5    False
Name: animal, dtype: bool

字符串和整数是不同的,因此不能进行比较:

>>> pd.Series([1]).isin(["1"])
0    False
dtype: bool
>>> pd.Series([1.1]).isin(["1.1"])
0    False
dtype: bool