Pandas中的布林索引


布林索引幫助我們使用布林向量從DataFrame中選擇資料。我們需要一個帶有布林索引的DataFrame才能使用布林索引。讓我們看看如何實現布林索引。

  • 建立一個數據字典。
  • 將其轉換為一個DataFrame物件,並將布林索引作為向量。
  • 現在,使用布林索引訪問資料。

請看下面的示例以瞭解。

示例

import pandas as pd
# data
data = {
   'Name': ['Hafeez', 'Srikanth', 'Rakesh'],
   'Age': [19, 20, 19]
}
# creating a DataFrame with boolean index vector
data_frame = pd.DataFrame(data, index = [True, False, True])
print(data_frame)

輸出

如果您執行以上程式,您將獲得以下結果。

          Name   Age
True    Hafeez   19
False Srikanth   20
True    Rakesh   19

現在,我們可以透過向loc[]、iloc[]、ix[]方法傳遞布林值來訪問DataFrame。讓我們一一看看。

示例

# accessing using .loc()
print(data_frame.loc[True])

輸出

如果執行以上程式碼,您將獲得以下結果。

       Name  Age
True Hafeez   19
True Rakesh   19

示例

# accessing using .iloc()
print(data_frame.iloc[1]) # iloc methods takes only integers so, we are passing 1 i
nsted of True. Both are same.

輸出

如果執行以上程式碼,您將獲得以下結果。

Name Srikanth
Age 20
dtype: object

示例

# accessing using .ix[]
# we can pass both boolean or integer values to .ix[]
print(data_frame.ix[True])
print()
print(data_frame.ix[1])

輸出

如果執行以上程式碼,您將獲得以下結果。

         Name Age
True   Hafeez 19
True   Rakesh 19

Name   Srikanth
Age       20
dtype: object

使用布林索引的另一種方法是將布林向量直接傳遞給DataFrame。它將列印所有值為True的行。讓我們看一個例子。

示例

import pandas as pd
# data
data = {
   'Name': ['Hafeez', 'Srikanth', 'Rakesh'],
   'Age': [19, 20, 19]
}
# creating a DataFrame with boolean index vector
data_frame = pd.DataFrame(data)
print(data_frame)

輸出

如果執行以上程式碼,您將獲得以下結果。

      Name    Age
0   Hafeez    19
1 Srikanth    20
2   Rakesh    19

現在,我們可以將布林向量傳遞給DataFrame來訪問資料。

示例

# passing boolean vector to data_frame index
print(data_frame[[True, True, False]])

輸出

如果執行以上程式碼,您將獲得以下結果。我們只得到了值為**True**的行。

      Name Age
0   Hafeez 19
1 Srikanth 20

結論

如果您對布林索引有任何疑問,請在評論區告訴我。

更新於: 2020年1月2日

2K+ 瀏覽量

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告