Computer >> Máy Tính >  >> Lập trình >> Python

Lập chỉ mục Boolean bằng Python

Các giá trị Boolean như True &false và 1 &0 có thể được sử dụng làm chỉ mục trong khung dữ liệu gấu trúc. Họ có thể giúp chúng tôi lọc ra các hồ sơ cần thiết. Trong các exampel dưới đây, chúng ta sẽ thấy các phương pháp khác nhau có thể được sử dụng để thực hiện các hoạt động lập chỉ mục Boolean.

Tạo chỉ mục Boolean

Hãy xem xét một khung dữ liệu mô tả dữ liệu từ một trò chơi. Các điểm khác nhau ghi được vào các ngày khác nhau được đề cập trong từ điển. Sau đó, chúng ta có thể tạo chỉ mục trên khung dữ liệu bằng cách sử dụng True và False làm giá trị lập chỉ mục. Sau đó, chúng tôi có thể in khung dữ liệu cuối cùng.

Ví dụ

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)

Chạy đoạn mã trên cho chúng ta kết quả sau

Đầu ra

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

Sử dụng .loc []

Hàm này có thể được sử dụng để lọc ra các bản ghi có giá trị Boolean cụ thể. Trong ví dụ dưới đây, chúng ta có thể thấy chỉ tìm nạp các bản ghi có giá trị Boolean là True.

Ví dụ

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])

Chạy đoạn mã trên cho chúng ta kết quả sau

Đầu ra

              Day           points
True       Monday       31
True    Wednesday       16
True       Friday       22

Sử dụng .ix []

Trong phương pháp này, chúng tôi cũng sử dụng số nguyên làm giá trị Boolean. Vì vậy, chúng tôi thay đổi các giá trị True và False trong khung dữ liệu thành 1 và 0. Sau đó, sử dụng chúng để lọc ra các bản ghi.

Ví dụ

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])

Chạy đoạn mã trên cho chúng ta kết quả sau:

Đầu ra

        Day points
0 Wednesday     16
0 T hursday     11