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

Lập chỉ mục Boolean trong Pandas


Lập chỉ mục Boolean giúp chúng ta chọn dữ liệu từ DataFrames bằng cách sử dụng một vectơ boolean. Chúng ta cần một DataFrame có chỉ mục boolean để sử dụng lập chỉ mục boolean. Hãy xem cách đạt được chỉ mục boolean.

  • Tạo từ điển dữ liệu.
  • Chuyển đổi nó thành đối tượng DataFrame với chỉ mục boolean dưới dạng vectơ.
  • Bây giờ, hãy truy cập dữ liệu bằng lập chỉ mục boolean.

Xem ví dụ dưới đây để có ý tưởng.

Ví dụ

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)

Đầu ra

Nếu bạn chạy chương trình trên, bạn sẽ nhận được kết quả sau.

          Name   Age
True    Hafeez   19
False Srikanth   20
True    Rakesh   19

Bây giờ, chúng ta có thể truy cập DataFrame bằng cách chuyển các boolean cho các phương thức loc [], iloc [], ix []. Hãy xem tất cả.

Ví dụ

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

Đầu ra

Nếu chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

       Name  Age
True Hafeez   19
True Rakesh   19

Ví dụ

# 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.

Đầu ra

Nếu chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

Name Srikanth
Age 20
dtype: object

Ví dụ

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

Đầu ra

Nếu chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

         Name Age
True   Hafeez 19
True   Rakesh 19

Name   Srikanth
Age       20
dtype: object

Một cách khác để sử dụng chỉ mục boolean là truyền trực tiếp vectơ boolean tới DataFrame. Nó sẽ in tất cả các hàng có giá trị True. Hãy xem một ví dụ.

Ví dụ

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)

Đầu ra

Nếu chạy đoạn mã trên, bạn sẽ nhận được kết quả sau.

      Name    Age
0   Hafeez    19
1 Srikanth    20
2   Rakesh    19

Bây giờ, chúng ta có thể chuyển vectơ boolean đến DataFrame để truy cập dữ liệu.

Ví dụ

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

Đầu ra

Nếu chạy đoạn mã trên, bạn sẽ nhận được kết quả sau. Chúng tôi chỉ có hàng là Đúng.

      Name Age
0   Hafeez 19
1 Srikanth 20

Kết luận

Nếu bạn có bất kỳ nghi ngờ nào về chỉ số Boolean, hãy cho tôi biết trong phần bình luận.