Path: blob/main/py-polars/tests/unit/operations/aggregation/test_implode.py
6940 views
import pytest12import polars as pl3from polars.testing import assert_frame_equal456def test_implode_22192_22191() -> None:7df = pl.DataFrame({"x": [5, 6, 7, 8, 9], "g": [1, 2, 3, 3, 3]})8assert df.group_by("g").agg(pl.col.x.implode()).sort("x").to_dict(9as_series=False10) == {"g": [1, 2, 3], "x": [[5], [6], [7, 8, 9]]}11assert df.select(pl.col.x.implode().over("g")).to_dict(as_series=False) == {12"x": [[5], [6], [7, 8, 9], [7, 8, 9], [7, 8, 9]]13}141516@pytest.mark.parametrize("maintain_order", [False, True])17def test_implode_agg_lit(maintain_order: bool) -> None:18assert_frame_equal(19pl.DataFrame()20.group_by(pl.lit(1, pl.Int64))21.agg(x=pl.lit([3]).list.set_union(pl.lit(1).implode())),22pl.DataFrame({"literal": [1], "x": [[3, 1]]}),23)242526