如何使用 series.isin() 方法檢查序列中的值?


Pandas 的 series.isin() 函式用於檢查給定序列物件中是否包含請求的值。它將返回一個布林序列物件,顯示序列中的每個元素是否與過去傳遞給 isin() 方法的序列中的元素匹配。

布林值 True 表示序列中與 isin() 方法輸入序列中指定的元素匹配的元素,而未匹配的元素則用 False 表示。

isin() 方法僅期望一個值的序列,而不是序列的序列或直接值。這意味著,它允許對鍵進行向量化,但不允許對值進行向量化。

如果傳遞任何其他資料,它將引發 TypeError,僅允許將列表類物件傳遞給 isin() 方法。

示例 1

我們將使用 Series.isin() 函式來檢查傳遞的值是否在序列物件中可用。

# importing pandas package
import pandas as pd

#creating pandas Series
series = pd.Series([7, 2, 6, 2, 5, 4, 1, 2, 3, 8])

print(series)

# Apply isin() function to check for the specified values
result = series.isin([2])

print("Output:")
print(result)

輸出

輸出如下:

0    7
1    2
2    6
3    2
4    5
5    4
6    1
7    2
8    3
9    8
dtype: int64

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

正如我們在輸出塊中看到的,Series.isin() 方法返回了一個新的帶有布林值的序列物件。True 表示該特定例項處的值與給定序列匹配。False 表示相反。

示例 2

在這裡,我們將看到如何透過向 isin() 方法傳遞值的列表來一次檢查多個值。

# importing pandas package
import pandas as pd

#creating pandas Series
series = pd.Series(['A', 'B', 'C', 'A', 'D', 'E', 'B'], index=[1, 2, 3, 4, 5, 6, 7])

print("Series object:")
print(series)

# Apply isin() function to check for the specified values
result = series.isin(['A', 'B'])

print("Output:")
print(result)

輸出

輸出如下:

Series object:
1    A
2    B
3    C
4    A
5    D
6    E
7    B
dtype: object

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

在上面的輸出塊中,我們可以觀察到索引 1、2、4 和 7 處的值與給定的值序列匹配,而其餘值則不匹配。

更新於: 2022-03-08

2K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.