Python 布林索引


布林值,例如 True & False 和 1 & 0,可以用作 Pandas DataFrame 的索引。它們可以幫助我們篩選所需的記錄。在下面的示例中,我們將看到執行布林索引操作的不同方法。

建立布林索引

讓我們考慮一個 DataFrame,其中描述了遊戲資料。不同日期的各種得分在一個字典中提到。然後,我們可以使用 True 和 False 作為索引值在 DataFrame 上建立一個索引。然後我們可以列印最終的 DataFrame。

示例

 線上演示

import pandas as pd
# dictionary
game = {'Day':["Monday","Tuesday","Wednesday","Thursday","Friday"], 'points':[31,24,16,11,22]}
df = pd.DataFrame(game,index=[True,False,True,False,True])
print(df)

執行上述程式碼將得到以下結果

輸出

               Day       points
True        Monday           31
False      Tuesday           24
True     Wednesday           16
False     Thursday           11
True        Friday           22

使用 .loc[]

此函式可用於篩選具有特定布林值的記錄。在下面的示例中,我們可以看到僅獲取布林值為 True 的記錄。

示例

 線上演示

import pandas as pd
# dictionary
game = {'Day':["Monday","Tuesday","Wednesday","Thursday","Friday"], 'points':[31,24,16,11,22]}
df = pd.DataFrame(game,index=[True,False,True,False,True])
#print(df)
print(df.loc[True])

執行上述程式碼將得到以下結果

輸出

              Day           points
True       Monday       31
True    Wednesday       16
True       Friday       22

使用 .ix[]

在此方法中,我們還使用整數作為布林值。因此,我們將 DataFrame 中的 True 和 False 值更改為 1 和 0。然後使用它們來篩選記錄。

示例

 線上演示

import pandas as pd
# dictionary
game = {'Day':["Monday","Tuesday","Wednesday","Thursday","Friday"], 'points':[31,24,16,11,22]}
df = pd.DataFrame(game,index=[1,1,0,0,1])
#print(df)
print(df.ix[0])

執行上述程式碼將得到以下結果

輸出

        Day points
0 Wednesday     16
0 T hursday     11

更新於:2019年12月20日

2K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告