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

Python Pandas - Trả về Index mới với phần tử không có trong Index khác và không sắp xếp kết quả

Để trả về Index mới chứa các phần tử có trong Index này nhưng không có trong Index khác, và không sắp xếp kết quả, sử dụng phương thức difference() với tham số sort=False.

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

  1. Import thư viện: import pandas as pd
  2. Tạo hai Index: index1 = pd.Index([30, 10, 20, 50, 40]), index2 = pd.Index([80, 40, 60, 20, 55])
  3. Gọi index1.difference(index2, sort=False).

Ví dụ hoàn chỉnh

import pandas as pd

index1 = pd.Index([30, 10, 20, 50, 40])
index2 = pd.Index([80, 40, 60, 20, 55])

print("Pandas Index1...\n", index1)
print("Pandas Index2...\n", index2)
print("\nNumber of elements in index1...\n", index1.size)
print("\nNumber of elements in index2...\n", index2.size)

# Hiệu (difference) không sắp xếp
res = index1.difference(index2, sort=False)
print("\nDifference...\n", res)

Kết quả

Pandas Index1...
 Int64Index([30, 10, 20, 50, 40], dtype='int64')
Pandas Index2...
 Int64Index([80, 40, 60, 20, 55], dtype='int64')
Number of elements in index1...
 5
Number of elements in index2...
 5
Difference...
 Int64Index([30, 10, 50], dtype='int64')

Giải thích: Các phần tử chỉ có trong index1: 30, 10, 50 (giữ nguyên thứ tự xuất hiện trong index1 do sort=False). Phần tử 20, 40 có trong cả hai nên bị loại.