Python Pandas - 返回一个新索引,其索引元素不在其他索引中,但对结果进行未排序

pythonserver side programmingprogramming更新于 2026/1/2 22:04:17

要返回一个新索引,其索引元素不在其他索引中,但对结果进行未排序,请使用 difference() 方法。将 sort 参数设置为 False。

首先,导入所需的库 −

import pandas as pd

创建两个 Pandas 索引 −

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

显示 Pandas index1 和 index2 −

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

获取两个索引的差值。使用值为"False"的"sort" 参数对结果进行未排序−

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

示例

以下是代码 −

import pandas as pd

# 创建两个 Pandas 索引
index1 = pd.Index([30, 10, 20, 50, 40])
index2 = pd.Index([80, 40, 60, 20, 55])

# 显示 Pandas index1 和 index2
print("Pandas Index1...\n",index1)
print("Pandas Index2...\n",index2)

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

# 获取两个索引的差异
# 使用值为"False"的"sort" 参数对结果进行未排序
res = index1.difference(index2, sort=False)

# 两个索引的差异,即返回一个新索引,其中包含其他索引中没有的元素
print("\nDifference...\n",res)

输出

这将产生以下输出 −

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

index1 中的元素数量...
5

index2 中的元素数量...
5

Difference...
Int64Index([30, 10, 50], dtype='int64')

相关文章


有用资源