pandas.Series.isin — pandas 3.0.0.dev0+2097.gcdc5b7418e documentation (original) (raw)
Whether elements in Series are contained in values.
Return a boolean Series showing whether each element in the Series matches an element in the passed sequence of values exactly.
Parameters:
valuesset or list-like
The sequence of values to test. Passing in a single string will raise a TypeError
. Instead, turn a single string into a list of one element.
Returns:
Series
Series of booleans indicating if each element is in values.
Raises:
TypeError
- If values is a string
Examples
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
To invert the boolean values, use the ~
operator:
~s.isin(["cow", "llama"]) 0 False 1 False 2 False 3 True 4 False 5 True Name: animal, dtype: bool
Passing a single string as s.isin('llama')
will raise an error. Use a list of one element instead:
s.isin(["llama"]) 0 True 1 False 2 True 3 False 4 True 5 False Name: animal, dtype: bool
Strings and integers are distinct and are therefore not comparable:
pd.Series([1]).isin(["1"]) 0 False dtype: bool pd.Series([1.1]).isin(["1.1"]) 0 False dtype: bool