Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - คำนวณ Symmetric Difference ของสอง Index และไม่เรียงลำดับผลลัพธ์

เพื่อคำนวณ Symmetric Difference (ความต่างสมมาตร) ของสอง Index objects และไม่เรียงลำดับผลลัพธ์ ให้ใช้เมธอด symmetric_difference() ใน Pandas ตั้งค่าพารามิเตอร์ sort เป็น False

เริ่มต้นด้วยการนำเข้าไลบรารีที่จำเป็น:

import pandas as pd

สร้าง Pandas Index สองชุด:

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

แสดง Pandas index1 และ index2:

print("Pandas Index1...\n", index1)
print("Pandas Index2...\n", index2)

คำนวณ Symmetric Difference ไม่เรียงลำดับผลลัพธ์โดยใช้พารามิเตอร์ "sort" со значением False:

res = index1.symmetric_difference(index2, sort=False)

ตัวอย่างโค้ดเต็ม

import pandas as pd

# Creating two Pandas index
index1 = pd.Index([50, 30, 20, 40, 10])
index2 = pd.Index([40, 10, 60, 20, 55])

# Display the Pandas index1 and index2
print("Pandas Index1...\n", index1)
print("Pandas Index2...\n", index2)

# Return the number of elements in Index1 and Index2
print("\nNumber of elements in index1...\n", index1.size)
print("\nNumber of elements in index2...\n", index2.size)

# Perform symmetric difference
# Unsort the result using the "sort" parameter
res = index1.symmetric_difference(index2, sort=False)

# Symmetric difference of both the indexes
print("\nThe index1 and index2 symmetric difference with unsorted result...\n", res)

เอาต์พุต

จะได้ผลลัพธ์ดังนี้:

Pandas Index1... Int64Index([50, 30, 20, 40, 10], dtype='int64')
Pandas Index2... Int64Index([40, 10, 60, 20, 55], dtype='int64')
Number of elements in index1... 5
Number of elements in index2... 5
The index1 and index2 symmetric difference with unsorted result... Int64Index([50, 30, 60, 55], dtype='int64')