Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Pandas - Kiểm tra IntervalArray có chứa giá trị cụ thể không

Để kiểm tra từng phần tử (elementwise) xem các khoảng trong IntervalArray có chứa một giá trị cụ thể hay không, hãy sử dụng phương thức array.contains().

Các bước thực hiện

1. Import thư viện cần thiết

import pandas as pd

2. Tạo IntervalArray từ điểm chia

array = pd.arrays.IntervalArray.from_breaks([0, 1, 2, 3, 4, 5])

3. Hiển thị IntervalArray

print("IntervalArray của chúng ta...\n", array)

4. Kiểm tra khoảng chứa giá trị 3.5

print("\nCác khoảng có chứa giá trị 3.5 không?\n", array.contains(3.5))

Ví dụ hoàn chỉnh

import pandas as pd

# Tạo IntervalArray từ điểm chia
array = pd.arrays.IntervalArray.from_breaks([0, 1, 2, 3, 4, 5])

# Hiển thị IntervalArray
print("IntervalArray của chúng ta...\n", array)

# Độ dài từng khoảng
print("\nĐộ dài IntervalArray...\n", array.length)

# Trung điểm từng khoảng
print("\nTrung điểm từng khoảng...\n", array.mid)

# Điểm phải từng khoảng
print("\nĐiểm phải từng khoảng...\n", array.right)

# Kiểm tra chứa giá trị 3.5
print("\nCác khoảng có chứa giá trị 3.5 không?\n", array.contains(3.5))

Kết quả đầu ra

IntervalArray của chúng ta...

[(0, 1], (1, 2], (2, 3], (3, 4], (4, 5]]
Length: 5, dtype: interval[int64, right]
Độ dài IntervalArray...
Int64Index([1, 1, 1, 1, 1], dtype='int64')
Trung điểm từng khoảng...
Float64Index([0.5, 1.5, 2.5, 3.5, 4.5], dtype='float64')
Điểm phải từng khoảng...
Int64Index([1, 2, 3, 4, 5], dtype='int64')
Các khoảng có chứa giá trị 3.5 không?
[False False False  True False]

Giải thích: Giá trị 3.5 nằm trong khoảng (3, 4] (vị trí 3, 0-based). Mặc định đóng phải nên 3.5 > 3 và 3.5 <= 4. Trả về mảng boolean. Các thuộc tính bổ sung: length, mid, left, right.