pandas.Index.union#
- final Index.union(other, sort=None)[源代码][源代码]#
形成两个索引对象的并集。
如果索引对象不兼容,两个索引对象将首先被转换为 dtype(‘object’)。
- 参数:
- 其他索引或类似数组
索引或包含元素的类数组对象,这些元素与原始索引形成并集。
- 排序布尔值或无,默认无
是否对生成的索引进行排序。
None : 对结果进行排序,除非
self 和 other 是相等的。
self 或 other 的长度为0。
在 self 或 other 中的一些值无法比较。在这种情况下会发出一个 RuntimeWarning。
False : 不要对结果进行排序。
True : 对结果进行排序(可能会引发 TypeError)。
- 返回:
- 索引
返回一个新的索引对象,包含原始索引和 other 索引中的所有唯一元素。
参见
Index.unique
返回索引中的唯一值。
Index.intersection
形成两个索引对象的交集。
Index.difference
返回一个新的索引,其中包含在索引中但不在 other 中的元素。
例子
联合匹配数据类型
>>> idx1 = pd.Index([1, 2, 3, 4]) >>> idx2 = pd.Index([3, 4, 5, 6]) >>> idx1.union(idx2) Index([1, 2, 3, 4, 5, 6], dtype='int64')
联合不匹配的数据类型
>>> idx1 = pd.Index(["a", "b", "c", "d"]) >>> idx2 = pd.Index([1, 2, 3, 4]) >>> idx1.union(idx2) Index(['a', 'b', 'c', 'd', 1, 2, 3, 4], dtype='object')
MultiIndex 案例
>>> idx1 = pd.MultiIndex.from_arrays( ... [[1, 1, 2, 2], ["Red", "Blue", "Red", "Blue"]] ... ) >>> idx1 MultiIndex([(1, 'Red'), (1, 'Blue'), (2, 'Red'), (2, 'Blue')], ) >>> idx2 = pd.MultiIndex.from_arrays( ... [[3, 3, 2, 2], ["Red", "Green", "Red", "Green"]] ... ) >>> idx2 MultiIndex([(3, 'Red'), (3, 'Green'), (2, 'Red'), (2, 'Green')], ) >>> idx1.union(idx2) MultiIndex([(1, 'Blue'), (1, 'Red'), (2, 'Blue'), (2, 'Green'), (2, 'Red'), (3, 'Green'), (3, 'Red')], ) >>> idx1.union(idx2, sort=False) MultiIndex([(1, 'Red'), (1, 'Blue'), (2, 'Red'), (2, 'Blue'), (3, 'Red'), (3, 'Green'), (2, 'Green')], )