pandas.Index.symmetric_difference#

Index.symmetric_difference(other, result_name=None, sort=None)[source]#

Compute the symmetric difference of two Index objects.

Parameters:
otherIndex or array-like

Index or an array-like object with elements to compute the symmetric difference with the original Index.

result_namestr

A string representing the name of the resulting Index, if desired.

sortbool or None, default None

Whether to sort the resulting index. By default, the values are attempted to be sorted, but any TypeError from incomparable elements is caught by pandas.

  • None : Attempt to sort the result, but catch any TypeErrors from comparing incomparable elements.

  • False : Do not sort the result.

  • True : Sort the result (which may raise TypeError).

Returns:
Index

Returns a new Index object containing elements that appear in either the original Index or the other Index, but not both.

See also

Index.difference

Return a new Index with elements of index not in other.

Index.union

Form the union of two Index objects.

Index.intersection

Form the intersection of two Index objects.

Notes

symmetric_difference contains elements that appear in either idx1 or idx2 but not both. Equivalent to the Index created by idx1.difference(idx2) | idx2.difference(idx1) with duplicates dropped.

Examples

>>> idx1 = pd.Index([1, 2, 3, 4])
>>> idx2 = pd.Index([2, 3, 4, 5])
>>> idx1.symmetric_difference(idx2)
Index([1, 5], dtype='int64')