polars.Expr.list.set_symmetric_difference#

Expr.list.set_symmetric_difference(other: IntoExpr) Expr[source]#

Compute the SET SYMMETRIC DIFFERENCE between the elements in this list and the elements of other.

Parameters:
other

Right hand side of the set operation.

Examples

>>> df = pl.DataFrame(
...     {
...         "a": [[1, 2, 3], [], [None, 3], [5, 6, 7]],
...         "b": [[2, 3, 4], [3], [3, 4, None], [6, 8]],
...     }
... )
>>> df.with_columns(sdiff=pl.col("b").list.set_symmetric_difference("a"))
shape: (4, 3)
┌───────────┬──────────────┬───────────┐
│ a         ┆ b            ┆ sdiff     │
│ ---       ┆ ---          ┆ ---       │
│ list[i64] ┆ list[i64]    ┆ list[i64] │
╞═══════════╪══════════════╪═══════════╡
│ [1, 2, 3] ┆ [2, 3, 4]    ┆ [4, 1]    │
│ []        ┆ [3]          ┆ [3]       │
│ [null, 3] ┆ [3, 4, null] ┆ [4]       │
│ [5, 6, 7] ┆ [6, 8]       ┆ [8, 5, 7] │
└───────────┴──────────────┴───────────┘