Python Pandas – 计算两个 Index 对象的对称差并取消排序结果

Python Pandas – 计算两个 Index 对象的对称差并取消排序结果

要计算两个 Index 对象的对称差并取消排序结果,请使用 Pandas 中的 symmetric_difference() 方法。要取消排序,请使用 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)

进行对称差计算。使用“sort”参数,值为False,取消排序 –

res = index1.symmetric_difference(index2, 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)

# 返回 Index1 和 Index2 中元素的数量
print("\nIndex1 中元素的数量...\n",index1.size)
print("\nIndex2 中元素的数量...\n",index2.size)

# 进行对称差计算
# 使用“sort”参数,取消排序
res = index1.symmetric_difference(index2, sort=False)

# 两个索引的对称差
print("\n索引1和索引2的对称差,未排序结果...\n",res)

输出

这将产生以下输出 –

Pandas Index1...
Int64Index([50, 30, 20, 40, 10], dtype='int64')
Pandas Index2...
Int64Index([40, 10, 60, 20, 55], dtype='int64')

Index1 中元素的数量...
5

Index2 中元素的数量...
5

索引1和索引2的对称差,未排序结果...
Int64Index([50, 30, 60, 55], dtype='int64')

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程