Python Pandas——計算兩個索引物件的對稱差集,並且不排序結果


要計算兩個索引物件的對稱差集,並且不排序結果,請在 Pandas 中使用symmetric_difference() 方法。要取消排序,請使用 sort 引數,並將其設定為 False

首先,匯入所需的庫 −

import pandas as pd

建立兩個 Pandas 索引 −

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)

執行對稱差集運算。使用值為 False 的 "sort" 引數取消對結果的排序 −

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')

更新於: 14-Oct-2021

145 次瀏覽

開啟您的 職業

完成課程後獲得認證

開始
廣告