Python Pandas - 形成两个 Index 对象的联合,但不对结果进行排序
要形成两个Index对象的交集,请使用Pandas中的index1.intersection(index2)方法。为避免对结果进行排序,请使用sort参数并将其设置为False。
首先,导入所需的库-
import pandas as pd
创建两个Pandas索引-
index1 = pd.Index([10, 20, 30, 40, 50]) index2 = pd.Index([80, 65, 60, 70, 55])
显示Pandasindex1和index2-
print("Pandas Index1...\n",index1) print("Pandas Index2...\n",index2)
执行联合。我们使用了值为'False'的“sort”参数来取消对结果的排序-
res = index1.union(index2, sort=False)
示例
以下是代码-
import pandas as pd #创建两个Pandas索引 index1 = pd.Index([10, 20, 30, 40, 50]) index2 = pd.Index([80, 65, 60, 70, 55]) #显示Pandasindex1和index2 print("Pandas Index1...\n",index1) print("Pandas Index2...\n",index2) #返回Index1和Index2中元素的数量 print("\nNumber of elements in index1...\n",index1.size) print("\nNumber of elements in index2...\n",index2.size) #执行联合 # We have used the "sort" parameter to unsort the results res = index1.union(index2, sort=False) #两个索引的并集 #结果未排序 print("\nThe index1 and index2 Union with unsorted result...\n",res)输出结果
这将产生以下输出-
Pandas Index1... Int64Index([10, 20, 30, 40, 50], dtype='int64') Pandas Index2... Int64Index([80, 65, 60, 70, 55], dtype='int64') Number of elements in index1... 5 Number of elements in index2... 5 The index1 and index2 Union with unsorted result... Int64Index([10, 20, 30, 40, 50, 80, 65, 60, 70, 55], dtype='int64')