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


Pandas建構函式中的series.eq()方法用於將給定序列的元素與其他元素(可能是另一個序列或標量值)進行比較。結果,它將返回一個包含布林值的新序列物件。

元素級的相等運算透過使用eq()方法完成。布林值True表示第二個序列物件中相等的值。其餘不相等的值由布林值False表示。

eq()方法的引數為other、fill_value和level。

示例1

在下面的示例中,我們將看到eq()方法如何將序列物件的元素與標量值進行比較。

# importing packages
import pandas as pd
import numpy as np

#create series
sr = pd.Series([24, 63, 21, np.nan, 24, 56, 24, 50])
print(sr)

# compare elements with a scalar value 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

像我們在前一個例子中所做的那樣,這裡我們將對2個序列物件應用eq()方法,而無需更改任何預設引數值。

# importing packages
import pandas as pd
import numpy as np

#create series
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)

# compare two series objects
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。

更新於:2022年3月7日

97 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.