Để 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
- Import thư viện:
import pandas as pd - Tạo hai Index:
index1 = pd.Index([30, 10, 20, 50, 40]),index2 = pd.Index([80, 40, 60, 20, 55]) - 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.